Submission #1723697
Source Code Expand
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int,int> P; typedef pair<int,P> P1; typedef pair<P,P> P2; typedef pair<double,int>Q; #define pu push #define pb push_back #define mp make_pair #define eps 1e-7 #define INF 1000000000 #define mod 1000000007 #define fi first #define sc second #define rep(i,x) for(int i=0;i<x;i++) #define repn(i,x) for(int i=1;i<=x;i++) #define SORT(x) sort(x.begin(),x.end()) #define ERASE(x) x.erase(unique(x.begin(),x.end()),x.end()) #define POSL(x,v) (lower_bound(x.begin(),x.end(),v)-x.begin()) #define POSU(x,v) (upper_bound(x.begin(),x.end(),v)-x.begin()) bitset<22223*55>dp[2][56],dp2[2][56]; int n,m,k,a[56],b[56]; int hoge[22223*55],sum; int main(){ cin>>n>>m>>k; rep(i,n)cin>>a[i],sum+=a[i]; rep(i,m)cin>>b[i],sum+=b[i]; int cur=0,nxt=1; dp[0][0].set(0); rep(i,n){ rep(j,56) dp[nxt][j].reset(); for(int j=0;j<=i;j++){ dp[nxt][j] |= dp[cur][j]; dp[nxt][j+1] |= dp[cur][j]<<a[i]; } swap(cur,nxt); } int cur2=0,nxt2=1; dp2[0][0].set(0); rep(i,m){ rep(j,56) dp2[nxt2][j].reset(); for(int j=0;j<=i;j++){ dp2[nxt2][j] |= dp2[cur2][j]; dp2[nxt2][j+1] |= dp2[cur2][j]<<b[i]; } swap(cur2,nxt2); } //cout<<dp[cur][1][2]<<dp[cur][1][3]<<dp[cur][2][4]<<dp[cur][2][5]<<dp[cur][3][7]<<endl; ll ans = 0; for(int i=0;i<=min(min(m,n),k);i++){ if(k==1 && i==0) continue; int nxt = 0; for(int j=0;j<22223*55;j++){ if(dp[cur][n-i][j]) hoge[nxt++] = j; } //for(int i=0;i<nxt;i++) cout<<hoge[i]<<" "; int curr = sum/2; nxt--; int up = nxt; for(int j=0;j<22223*55;j++){ if(dp2[cur2][i][j]){ //cout<<j<<endl; while(nxt>0 && hoge[nxt]>=curr-j) nxt--; //dp[cur][n-i][hoge-j] for(int f=max(0,nxt-2);f<=min(up,nxt+2);f++){ ans = max(ans,1LL*(sum-hoge[f]-j)*(hoge[f]+j)); } } } } cout<<ans<<endl; }
Submission Info
Submission Time | |
---|---|
Task | D - DDPC特別ビュッフェ |
User | IH19980412 |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 1913 Byte |
Status | AC |
Exec Time | 500 ms |
Memory | 35840 KB |
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | All | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 10 / 10 | 20 / 20 | 70 / 70 | ||||||||
Status |
|
|
|
|
Set Name | Test Cases |
---|---|
Sample | 000_example_01.txt, 000_example_02.txt |
Subtask1 | 000_example_01.in, 010_rand_01.txt, 010_rand_02.txt, 010_rand_03.txt, 010_rand_04.txt, 010_rand_05.txt, 020_hand_01.txt, 020_hand_02.txt, 020_hand_03.txt, 020_hand_04.txt, 020_hand_05.txt, 020_hand_06.txt, 020_hand_07.txt, 030_max_01.txt, 030_max_02.txt, 030_max_03.txt, 030_max_04.txt, 030_max_05.txt |
Subtask2 | 000_example_01.txt, 000_example_02.txt, 020_hand_01.txt, 020_hand_03.txt, 020_hand_07.txt, 050_rand_01.txt, 050_rand_02.txt, 050_rand_03.txt, 060_rand_01.txt, 060_rand_02.txt, 060_rand_03.txt, 060_rand_04.txt, 060_rand_05.txt, 060_rand_06.txt, 060_rand_07.txt, 060_rand_08.txt, 060_rand_09.txt, 060_rand_10.txt, 070_rand_01.txt, 070_rand_02.txt, 070_rand_03.txt, 070_rand_04.txt, 070_rand_05.txt, 070_rand_06.txt, 070_rand_07.txt, 070_rand_08.txt, 070_rand_09.txt, 070_rand_10.txt, 080_hand_01.txt, 080_hand_02.txt, 080_hand_03.txt, 080_hand_04.txt, 080_hand_05.txt, 080_hand_06.txt, 080_hand_07.txt, 080_hand_08.txt, 080_hand_09.txt, 080_hand_10.txt, 080_hand_11.txt, 090_anti_greedy_01.txt, 090_anti_greedy_02.txt, 090_anti_greedy_03.txt, 090_anti_greedy_04.txt, 090_anti_greedy_05.txt, 090_anti_greedy_06.txt |
All | 000_example_01.txt, 000_example_02.txt, 010_rand_01.txt, 010_rand_02.txt, 010_rand_03.txt, 010_rand_04.txt, 010_rand_05.txt, 020_hand_01.txt, 020_hand_02.txt, 020_hand_03.txt, 020_hand_04.txt, 020_hand_05.txt, 020_hand_06.txt, 020_hand_07.txt, 030_max_01.txt, 030_max_02.txt, 030_max_03.txt, 030_max_04.txt, 030_max_05.txt, 050_rand_01.txt, 050_rand_02.txt, 050_rand_03.txt, 060_rand_01.txt, 060_rand_02.txt, 060_rand_03.txt, 060_rand_04.txt, 060_rand_05.txt, 060_rand_06.txt, 060_rand_07.txt, 060_rand_08.txt, 060_rand_09.txt, 060_rand_10.txt, 070_rand_01.txt, 070_rand_02.txt, 070_rand_03.txt, 070_rand_04.txt, 070_rand_05.txt, 070_rand_06.txt, 070_rand_07.txt, 070_rand_08.txt, 070_rand_09.txt, 070_rand_10.txt, 080_hand_01.txt, 080_hand_02.txt, 080_hand_03.txt, 080_hand_04.txt, 080_hand_05.txt, 080_hand_06.txt, 080_hand_07.txt, 080_hand_08.txt, 080_hand_09.txt, 080_hand_10.txt, 080_hand_11.txt, 090_anti_greedy_01.txt, 090_anti_greedy_02.txt, 090_anti_greedy_03.txt, 090_anti_greedy_04.txt, 090_anti_greedy_05.txt, 090_anti_greedy_06.txt, 100_rand_01.txt, 100_rand_02.txt, 100_rand_03.txt, 100_rand_04.txt, 100_rand_05.txt, 100_rand_06.txt, 100_rand_07.txt, 100_rand_08.txt, 100_rand_09.txt, 100_rand_10.txt, 110_rand_01.txt, 110_rand_02.txt, 110_rand_03.txt, 110_rand_04.txt, 110_rand_05.txt, 110_rand_06.txt, 110_rand_07.txt, 110_rand_08.txt, 110_rand_09.txt, 110_rand_10.txt, 120_max_01.txt, 120_max_02.txt, 120_max_03.txt, 120_max_04.txt, 120_max_05.txt, 130_max_01.txt, 130_max_02.txt, 130_max_03.txt, 130_max_04.txt, 130_max_05.txt, 140_hand_01.txt, 140_hand_02.txt, 140_hand_03.txt, 140_hand_04.txt, 140_hand_05.txt, 140_hand_06.txt, 140_hand_07.txt, 140_hand_08.txt, 140_hand_09.txt, 140_hand_10.txt, 140_hand_11.txt, 140_hand_12.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
000_example_01.txt | AC | 17 ms | 34688 KB |
000_example_02.txt | AC | 22 ms | 34688 KB |
010_rand_01.txt | AC | 172 ms | 34688 KB |
010_rand_02.txt | AC | 91 ms | 34688 KB |
010_rand_03.txt | AC | 25 ms | 34688 KB |
010_rand_04.txt | AC | 26 ms | 34688 KB |
010_rand_05.txt | AC | 188 ms | 34688 KB |
020_hand_01.txt | AC | 12 ms | 22400 KB |
020_hand_02.txt | AC | 17 ms | 34688 KB |
020_hand_03.txt | AC | 221 ms | 34688 KB |
020_hand_04.txt | AC | 291 ms | 34688 KB |
020_hand_05.txt | AC | 23 ms | 34688 KB |
020_hand_06.txt | AC | 23 ms | 34688 KB |
020_hand_07.txt | AC | 21 ms | 34688 KB |
030_max_01.txt | AC | 291 ms | 34688 KB |
030_max_02.txt | AC | 290 ms | 34688 KB |
030_max_03.txt | AC | 301 ms | 34688 KB |
030_max_04.txt | AC | 305 ms | 34688 KB |
030_max_05.txt | AC | 294 ms | 34688 KB |
050_rand_01.txt | AC | 231 ms | 34688 KB |
050_rand_02.txt | AC | 75 ms | 34688 KB |
050_rand_03.txt | AC | 222 ms | 34688 KB |
060_rand_01.txt | AC | 261 ms | 34688 KB |
060_rand_02.txt | AC | 75 ms | 34688 KB |
060_rand_03.txt | AC | 238 ms | 34688 KB |
060_rand_04.txt | AC | 213 ms | 34688 KB |
060_rand_05.txt | AC | 122 ms | 34688 KB |
060_rand_06.txt | AC | 187 ms | 34688 KB |
060_rand_07.txt | AC | 97 ms | 34688 KB |
060_rand_08.txt | AC | 168 ms | 34688 KB |
060_rand_09.txt | AC | 25 ms | 34688 KB |
060_rand_10.txt | AC | 85 ms | 34688 KB |
070_rand_01.txt | AC | 247 ms | 34688 KB |
070_rand_02.txt | AC | 141 ms | 34688 KB |
070_rand_03.txt | AC | 35 ms | 34688 KB |
070_rand_04.txt | AC | 44 ms | 34688 KB |
070_rand_05.txt | AC | 223 ms | 34688 KB |
070_rand_06.txt | AC | 99 ms | 34688 KB |
070_rand_07.txt | AC | 221 ms | 34688 KB |
070_rand_08.txt | AC | 107 ms | 34688 KB |
070_rand_09.txt | AC | 105 ms | 34688 KB |
070_rand_10.txt | AC | 37 ms | 34688 KB |
080_hand_01.txt | AC | 23 ms | 34688 KB |
080_hand_02.txt | AC | 24 ms | 34688 KB |
080_hand_03.txt | AC | 27 ms | 34688 KB |
080_hand_04.txt | AC | 221 ms | 34688 KB |
080_hand_05.txt | AC | 27 ms | 34688 KB |
080_hand_06.txt | AC | 58 ms | 34688 KB |
080_hand_07.txt | AC | 383 ms | 34688 KB |
080_hand_08.txt | AC | 436 ms | 34688 KB |
080_hand_09.txt | AC | 33 ms | 34688 KB |
080_hand_10.txt | AC | 26 ms | 34688 KB |
080_hand_11.txt | AC | 26 ms | 34688 KB |
090_anti_greedy_01.txt | AC | 383 ms | 34688 KB |
090_anti_greedy_02.txt | AC | 417 ms | 34688 KB |
090_anti_greedy_03.txt | AC | 407 ms | 34688 KB |
090_anti_greedy_04.txt | AC | 446 ms | 34688 KB |
090_anti_greedy_05.txt | AC | 417 ms | 34688 KB |
090_anti_greedy_06.txt | AC | 414 ms | 34688 KB |
100_rand_01.txt | AC | 287 ms | 35200 KB |
100_rand_02.txt | AC | 76 ms | 34688 KB |
100_rand_03.txt | AC | 246 ms | 35200 KB |
100_rand_04.txt | AC | 257 ms | 35072 KB |
100_rand_05.txt | AC | 130 ms | 34688 KB |
100_rand_06.txt | AC | 194 ms | 34688 KB |
100_rand_07.txt | AC | 111 ms | 34688 KB |
100_rand_08.txt | AC | 174 ms | 34688 KB |
100_rand_09.txt | AC | 25 ms | 34688 KB |
100_rand_10.txt | AC | 85 ms | 34816 KB |
110_rand_01.txt | AC | 345 ms | 35200 KB |
110_rand_02.txt | AC | 94 ms | 34944 KB |
110_rand_03.txt | AC | 321 ms | 35328 KB |
110_rand_04.txt | AC | 258 ms | 35072 KB |
110_rand_05.txt | AC | 171 ms | 34816 KB |
110_rand_06.txt | AC | 257 ms | 34944 KB |
110_rand_07.txt | AC | 106 ms | 34688 KB |
110_rand_08.txt | AC | 203 ms | 34688 KB |
110_rand_09.txt | AC | 27 ms | 34688 KB |
110_rand_10.txt | AC | 96 ms | 34944 KB |
120_max_01.txt | AC | 490 ms | 35328 KB |
120_max_02.txt | AC | 488 ms | 35200 KB |
120_max_03.txt | AC | 500 ms | 35328 KB |
120_max_04.txt | AC | 322 ms | 35200 KB |
120_max_05.txt | AC | 326 ms | 35072 KB |
130_max_01.txt | AC | 400 ms | 35840 KB |
130_max_02.txt | AC | 391 ms | 35712 KB |
130_max_03.txt | AC | 391 ms | 35840 KB |
130_max_04.txt | AC | 393 ms | 35840 KB |
130_max_05.txt | AC | 391 ms | 35584 KB |
140_hand_01.txt | AC | 419 ms | 34688 KB |
140_hand_02.txt | AC | 42 ms | 34688 KB |
140_hand_03.txt | AC | 433 ms | 34816 KB |
140_hand_04.txt | AC | 440 ms | 34816 KB |
140_hand_05.txt | AC | 23 ms | 34688 KB |
140_hand_06.txt | AC | 24 ms | 34688 KB |
140_hand_07.txt | AC | 431 ms | 34688 KB |
140_hand_08.txt | AC | 30 ms | 34688 KB |
140_hand_09.txt | AC | 59 ms | 34688 KB |
140_hand_10.txt | AC | 386 ms | 34688 KB |
140_hand_11.txt | AC | 226 ms | 34688 KB |
140_hand_12.txt | AC | 419 ms | 34688 KB |