Submission #1679887


Source Code Expand

#include<iostream>
#include<string>
#include<cmath>
#include<queue>
#include<map>
#include<set>
#include<list>
#include<iomanip>
#include<vector>
#include<functional>
#include<algorithm>
#include<cstdio>
#include<unordered_map>
using namespace std;
//---------------------------------------------------
//ライブラリゾーン!!!!
#define int long long
#define str string
#define rep(i,j) for(int i=0;i<(int)(j);i++)
typedef long long ll;
typedef long double ld;
const ll inf = 4523372036854775807;
short gh[2][4] = { { 0,0,-1,1 },{ -1,1,0,0 } };
struct P {
	ll pos, cost;
};
bool operator<(P a, P b) { return a.cost < b.cost; }
bool operator>(P a, P b) { return a.cost > b.cost; }
struct B {//隣接リスト表現
	ll to, cost;
};
struct S {//辺の情報を入れる変数
	int from, to, cost;
};
struct H {
	int x, y;
};
bool operator<(H a, H b) {
	if (a.x != b.x) return a.x < b.x;
	return a.y < b.y;
}
ll gcm(ll i, ll j) {//最大公約数
	if (i > j) swap(i, j);
	if (i == 0) return j;
	return gcm(j%i, i);
}
ld rad(ld a, ld b, ld c, ld d) {
	return sqrt(pow(a - c, 2) + pow(b - d, 2));
}//rad=座標上の2点間の距離
int ari(int a, int b, int c) {
	return (a + b)*c / 2;
}//等差数列の和
bool suf(ld a, ld b, ld c, ld d) {
	if (b <= c || d <= a) return 0;
	return 1;
}//[a,b),[c,d)
//距離を[a]、辺を[e]とするダイクストラ
/*void dijk(int n,int s) {//頂点の数、出発点
	priority_queue<P, vector<P>, greater<P>>p;
	for (int i = 1; i <= n; i++) 
		a[i] = inf;
	a[s] = 0;
	p.push(P{ s,0 });
	while (!p.empty()) {
		P t = p.top(); p.pop();
		for (int i = 0; i < e[t.pos].size(); i++) {
			if (a[e[t.pos][i].to] > a[t.pos] + e[t.pos][i].to) {
				a[e[t.pos][i].to] = a[t.pos] + e[t.pos][i].cost;
				p.push(P{ e[t.pos][i].to,a[e[t.pos][i].to] });
			}
		}
	}
}*/
int dat[200000];
int query(int i, int a, int b, int l, int r) {
	if (b <= l || a >= r) return inf;
	if (a <= l&&r <= b) return dat[i];
	int res = query(i * 2 + 1, a, b, l, (l + r) / 2);
	res = min(res, query(i * 2 + 2, a, b, (l + r) / 2, r));
	return res;
}
void update(int i, int s,int n) {//変える場所、変える値、要素数
	i = n + i - 1;
	dat[i] = s;
	while (i > 0) {
		i = (i - 1) / 2;
		dat[i] = min(dat[i * 2 + 1], dat[i * 2 + 2]);
	}
}
//---------------------------------------------------
//+++++++++++++++++++++++++++++++++++++++++++++++++++
int n, x, y;
int t[300], h[300], dp[301][301][601];
signed main() {
	cin >> x >> y >> n;
	for (int i = 0; i < n; i++)
		cin >> t[i] >> h[i];
	for (int i = 0; i < n; i++)
		for (int j = 0; j <= x; j++)
			for (int z = 0; z <= x+y; z++)
				dp[i][j][z] = -1;
	dp[0][0][0] = 0;
	for (int i = 0; i < n; i++) {
		for (int j = 0; j < x; j++) {
			for (int z = 0; z <= x+y; z++) {
				if (dp[i][j][z] == -1) continue;
				dp[i + 1][j][z] = max(dp[i + 1][j][z], dp[i][j][z]);
				if (z + t[i] > x + y) continue;
				dp[i + 1][j + 1][z + t[i]] = max(dp[i + 1][j + 1][z + t[i]], dp[i][j][z] + h[i]);
			}
		}
	}
	int sum = 0;
	for (int i = 0; i <= n; i++)
		for (int j = 0; j <= x; j++)
			for (int z = 0; z <= x+y; z++)
				sum = max(sum, dp[i][j][z]);
	cout << sum << endl;
	getchar(); getchar();
}

Submission Info

Submission Time
Task C - 最高のトッピングにしような
User Thistle
Language C++14 (GCC 5.4.1)
Score 30
Code Size 3280 Byte
Status MLE
Exec Time 280 ms
Memory 426240 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 30 / 30 0 / 70
Status
AC × 4
AC × 29
AC × 33
MLE × 21
Set Name Test Cases
Sample subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt, subtask0-sample04.txt
Subtask1 subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt, subtask0-sample04.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt, subtask1-16.txt, subtask1-17.txt, subtask1-18.txt, subtask1-19.txt, subtask1-20.txt, subtask1-21.txt, subtask1-22.txt, subtask1-23.txt, subtask1-24.txt, subtask1-25.txt
Subtask2 subtask0-sample01.txt, subtask0-sample02.txt, subtask0-sample03.txt, subtask0-sample04.txt, subtask1-01.txt, subtask1-02.txt, subtask1-03.txt, subtask1-04.txt, subtask1-05.txt, subtask1-06.txt, subtask1-07.txt, subtask1-08.txt, subtask1-09.txt, subtask1-10.txt, subtask1-11.txt, subtask1-12.txt, subtask1-13.txt, subtask1-14.txt, subtask1-15.txt, subtask1-16.txt, subtask1-17.txt, subtask1-18.txt, subtask1-19.txt, subtask1-20.txt, subtask1-21.txt, subtask1-22.txt, subtask1-23.txt, subtask1-24.txt, subtask1-25.txt, subtask2-01.txt, subtask2-02.txt, subtask2-03.txt, subtask2-04.txt, subtask2-05.txt, subtask2-06.txt, subtask2-07.txt, subtask2-08.txt, subtask2-09.txt, subtask2-10.txt, subtask2-11.txt, subtask2-12.txt, subtask2-13.txt, subtask2-14.txt, subtask2-15.txt, subtask2-16.txt, subtask2-17.txt, subtask2-18.txt, subtask2-19.txt, subtask2-20.txt, subtask2-21.txt, subtask2-22.txt, subtask2-23.txt, subtask2-24.txt, subtask2-25.txt
Case Name Status Exec Time Memory
subtask0-sample01.txt AC 3 ms 6400 KB
subtask0-sample02.txt AC 3 ms 6400 KB
subtask0-sample03.txt AC 3 ms 6400 KB
subtask0-sample04.txt AC 3 ms 6400 KB
subtask1-01.txt AC 8 ms 22784 KB
subtask1-02.txt AC 10 ms 28928 KB
subtask1-03.txt AC 10 ms 28928 KB
subtask1-04.txt AC 10 ms 28928 KB
subtask1-05.txt AC 10 ms 28928 KB
subtask1-06.txt AC 14 ms 43520 KB
subtask1-07.txt AC 14 ms 43392 KB
subtask1-08.txt AC 14 ms 43264 KB
subtask1-09.txt AC 19 ms 57728 KB
subtask1-10.txt AC 18 ms 57728 KB
subtask1-11.txt AC 23 ms 72064 KB
subtask1-12.txt AC 23 ms 72064 KB
subtask1-13.txt AC 23 ms 72192 KB
subtask1-14.txt AC 2 ms 2304 KB
subtask1-15.txt AC 23 ms 71936 KB
subtask1-16.txt AC 23 ms 71936 KB
subtask1-17.txt AC 24 ms 72320 KB
subtask1-18.txt AC 23 ms 72320 KB
subtask1-19.txt AC 24 ms 72320 KB
subtask1-20.txt AC 24 ms 72448 KB
subtask1-21.txt AC 24 ms 72448 KB
subtask1-22.txt AC 24 ms 72448 KB
subtask1-23.txt AC 24 ms 72448 KB
subtask1-24.txt AC 24 ms 72448 KB
subtask1-25.txt AC 24 ms 72448 KB
subtask2-01.txt AC 28 ms 86528 KB
subtask2-02.txt AC 36 ms 115200 KB
subtask2-03.txt AC 45 ms 143616 KB
subtask2-04.txt MLE 122 ms 355072 KB
subtask2-05.txt MLE 139 ms 424704 KB
subtask2-06.txt AC 80 ms 213888 KB
subtask2-07.txt MLE 94 ms 285312 KB
subtask2-08.txt MLE 137 ms 355328 KB
subtask2-09.txt MLE 126 ms 355456 KB
subtask2-10.txt MLE 156 ms 425344 KB
subtask2-11.txt MLE 140 ms 424320 KB
subtask2-12.txt MLE 149 ms 424704 KB
subtask2-13.txt MLE 227 ms 425984 KB
subtask2-14.txt MLE 272 ms 426240 KB
subtask2-15.txt MLE 243 ms 426240 KB
subtask2-16.txt MLE 246 ms 426240 KB
subtask2-17.txt MLE 243 ms 426240 KB
subtask2-18.txt MLE 129 ms 424192 KB
subtask2-19.txt MLE 128 ms 424192 KB
subtask2-20.txt MLE 266 ms 426240 KB
subtask2-21.txt MLE 280 ms 426240 KB
subtask2-22.txt MLE 244 ms 426240 KB
subtask2-23.txt MLE 254 ms 426240 KB
subtask2-24.txt MLE 272 ms 426240 KB
subtask2-25.txt MLE 269 ms 426240 KB