Codeforces Round #579 DIV3 F2問題
Problem description
省略
省略
C++に変換後のコードはこちら
//no-unlocked
int N, R, A[100], B[100];
int dp[60001], nx[60001], val[100];
{
int i, j, k, res = 0;
rd(N,R,(A,B)(N));
for(;;){
int fg = 0;
rep(i,N){
if(A[i] <= R && B[i] >= 0){
R += B[i];
res++;
fg = 1;
arrErase(i, N, A, B);
break;
}
}
if(!fg) break;
}
k = 0;
rep(i,N) if(B[i] < 0){
A[k] = A[i];
B[k++] = B[i];
}
N = k;
rep(i,N) val[i] = - (A[i] + B[i]);
sortA(N, val, A, B);
rep(k,N){
rep(i,max(A[k],-B[k]),R+1){
dp[i+B[k]] >?= dp[i]+1;
}
}
res += max(dp(R+1));
wt(res);
}
Current time: 2024年04月19日11時25分21秒
Last modified: 2019年08月21日05時22分32秒 (by laycrs)
Tags: Competitive_Programming_Incomplete Codeforces CF579 CF_Div3_F
トップページに戻る
Logged in as: unknown user (not login)