Submission #1204592


Source Code Expand

#include<bits/stdc++.h>
using namespace std;

#define int long long

typedef vector<int>vint;
typedef pair<int,int>pint;
typedef vector<pint>vpint;
#define rep(i,n) for(int i=0;i<(n);i++)
#define reps(i,f,n) for(int i=(f);i<(n);i++)
#define all(v) (v).begin(),(v).end()
#define each(it,v) for(__typeof((v).begin()) it=(v).begin();it!=(v).end();it++)
#define pb push_back
#define fi first
#define se second
template<typename A,typename B>inline void chmin(A &a,B b){if(a>b)a=b;}
template<typename A,typename B>inline void chmax(A &a,B b){if(a<b)a=b;}


int N,M,K;
int A[55],B[55];
typedef bitset<22222*55>bs;

bs dp[60];

signed main(){
    cin>>N>>M>>K;

    rep(i,N)cin>>A[i];
    rep(i,M)cin>>B[i];


    if(K==1){
        int sumA=accumulate(A,A+N,0ll);
        int sumB=accumulate(B,B+M,0ll);
        int ma=0;
        rep(i,N)rep(j,M){
            chmax(ma,(sumA-A[i]+B[j])*(sumB-B[j]+A[i]));
        }
        cout<<ma<<endl;
        return 0;
    }

    chmin(K,N);chmin(K,M);

    int sum=accumulate(A,A+N,0ll);
    dp[0][sum]=1;

    for(int i=0;i<N;i++){
        for(int j=K-1;j>=0;j--){
            dp[j+1]|=dp[j]>>A[i];
        }
    }

    for(int i=0;i<M;i++){
        for(int j=1;j<=K;j++){
            dp[j-1]|=dp[j]<<B[i];
        }
    }

    int ma=0;
    sum+=accumulate(B,B+M,0ll);
    rep(i,22222*55)if(dp[0][i])chmax(ma,i*(sum-i));
    cout<<ma<<endl;
    return 0;
}

Submission Info

Submission Time
Task D - DDPC特別ビュッフェ
User latte0119
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1457 Byte
Status AC
Exec Time 402 ms
Memory 8960 KB

Judge Result

Set Name Sample Subtask1 Subtask2 All
Score / Max Score 0 / 0 10 / 10 20 / 20 70 / 70
Status
AC × 2
AC × 17
AC × 45
AC × 101
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 1 ms 256 KB
000_example_02.txt AC 3 ms 1024 KB
010_rand_01.txt AC 1 ms 256 KB
010_rand_02.txt AC 1 ms 256 KB
010_rand_03.txt AC 1 ms 256 KB
010_rand_04.txt AC 1 ms 256 KB
010_rand_05.txt AC 1 ms 256 KB
020_hand_01.txt AC 1 ms 256 KB
020_hand_02.txt AC 1 ms 256 KB
020_hand_03.txt AC 1 ms 256 KB
020_hand_04.txt AC 1 ms 256 KB
020_hand_05.txt AC 1 ms 256 KB
020_hand_06.txt AC 1 ms 256 KB
020_hand_07.txt AC 1 ms 256 KB
030_max_01.txt AC 1 ms 256 KB
030_max_02.txt AC 1 ms 256 KB
030_max_03.txt AC 1 ms 256 KB
030_max_04.txt AC 1 ms 256 KB
030_max_05.txt AC 1 ms 256 KB
050_rand_01.txt AC 110 ms 4608 KB
050_rand_02.txt AC 7 ms 1024 KB
050_rand_03.txt AC 64 ms 4608 KB
060_rand_01.txt AC 139 ms 4608 KB
060_rand_02.txt AC 8 ms 1024 KB
060_rand_03.txt AC 75 ms 4608 KB
060_rand_04.txt AC 136 ms 6656 KB
060_rand_05.txt AC 21 ms 1408 KB
060_rand_06.txt AC 12 ms 1024 KB
060_rand_07.txt AC 42 ms 4608 KB
060_rand_08.txt AC 41 ms 2048 KB
060_rand_09.txt AC 4 ms 1024 KB
060_rand_10.txt AC 16 ms 1408 KB
070_rand_01.txt AC 159 ms 6656 KB
070_rand_02.txt AC 71 ms 4608 KB
070_rand_03.txt AC 6 ms 1280 KB
070_rand_04.txt AC 10 ms 1792 KB
070_rand_05.txt AC 100 ms 4608 KB
070_rand_06.txt AC 24 ms 1920 KB
070_rand_07.txt AC 139 ms 6656 KB
070_rand_08.txt AC 41 ms 4608 KB
070_rand_09.txt AC 43 ms 4608 KB
070_rand_10.txt AC 8 ms 1536 KB
080_hand_01.txt AC 4 ms 1024 KB
080_hand_02.txt AC 4 ms 1024 KB
080_hand_03.txt AC 4 ms 1152 KB
080_hand_04.txt AC 160 ms 6656 KB
080_hand_05.txt AC 4 ms 1152 KB
080_hand_06.txt AC 17 ms 2048 KB
080_hand_07.txt AC 323 ms 8960 KB
080_hand_08.txt AC 398 ms 8960 KB
080_hand_09.txt AC 4 ms 1024 KB
080_hand_10.txt AC 4 ms 1024 KB
080_hand_11.txt AC 4 ms 1024 KB
090_anti_greedy_01.txt AC 315 ms 8960 KB
090_anti_greedy_02.txt AC 375 ms 8960 KB
090_anti_greedy_03.txt AC 373 ms 8960 KB
090_anti_greedy_04.txt AC 385 ms 8960 KB
090_anti_greedy_05.txt AC 379 ms 8960 KB
090_anti_greedy_06.txt AC 377 ms 8960 KB
100_rand_01.txt AC 140 ms 4608 KB
100_rand_02.txt AC 8 ms 1024 KB
100_rand_03.txt AC 74 ms 4608 KB
100_rand_04.txt AC 136 ms 6656 KB
100_rand_05.txt AC 21 ms 1408 KB
100_rand_06.txt AC 13 ms 1024 KB
100_rand_07.txt AC 41 ms 4608 KB
100_rand_08.txt AC 41 ms 2048 KB
100_rand_09.txt AC 4 ms 1024 KB
100_rand_10.txt AC 17 ms 1408 KB
110_rand_01.txt AC 230 ms 8704 KB
110_rand_02.txt AC 23 ms 1920 KB
110_rand_03.txt AC 191 ms 6656 KB
110_rand_04.txt AC 159 ms 6656 KB
110_rand_05.txt AC 76 ms 4608 KB
110_rand_06.txt AC 114 ms 4608 KB
110_rand_07.txt AC 44 ms 4608 KB
110_rand_08.txt AC 79 ms 4608 KB
110_rand_09.txt AC 4 ms 1024 KB
110_rand_10.txt AC 28 ms 2048 KB
120_max_01.txt AC 384 ms 8960 KB
120_max_02.txt AC 402 ms 8960 KB
120_max_03.txt AC 388 ms 8960 KB
120_max_04.txt AC 71 ms 2176 KB
120_max_05.txt AC 85 ms 2432 KB
130_max_01.txt AC 315 ms 8960 KB
130_max_02.txt AC 310 ms 8960 KB
130_max_03.txt AC 313 ms 8960 KB
130_max_04.txt AC 319 ms 8960 KB
130_max_05.txt AC 321 ms 8960 KB
140_hand_01.txt AC 397 ms 8960 KB
140_hand_02.txt AC 7 ms 1280 KB
140_hand_03.txt AC 388 ms 8960 KB
140_hand_04.txt AC 390 ms 8960 KB
140_hand_05.txt AC 4 ms 1024 KB
140_hand_06.txt AC 4 ms 1024 KB
140_hand_07.txt AC 395 ms 8960 KB
140_hand_08.txt AC 5 ms 1280 KB
140_hand_09.txt AC 17 ms 2048 KB
140_hand_10.txt AC 318 ms 8960 KB
140_hand_11.txt AC 159 ms 6656 KB
140_hand_12.txt AC 378 ms 8704 KB