Submission #2180843
Source Code Expand
#include <iostream> #include<vector> #include<algorithm> #include<queue> using namespace std; #define rep(i,n) for(int i=0;i<(int)(n);i++) #define REP(i,m,n) for(int i=m;i<(int)(n);i++) typedef long long ll; typedef pair<int,int> pint; const int inf = 1<<30; int dx[]={1,0,-1,0}; int dy[]={0,1,0,-1}; ll n,dp[70][70][70][70],a[100][100]; pint p[30]; ll rec(int l,int r,int u,int d){ if(dp[l][r][u][d]!=-1)return dp[l][r][u][d]; ll ret=0; rep(i,n){ ll tmp=0; int x=p[i].first,y=p[i].second; if(l<=x&&x<=r&&u<=y&&y<=d){ REP(j,l,r+1)tmp+=a[j][y]; REP(j,u,d+1)tmp+=a[x][j]; tmp-=a[x][y]; tmp+=rec(l,x-1,u,y-1)+rec(l,x-1,y+1,d)+rec(x+1,r,u,y-1)+rec(x+1,r,y+1,d); } ret=max(ret,tmp); } return dp[l][r][u][d]=ret; } int main(){ ll w,h; cin>>w>>h; cin>>n; pint x[n],y[n]; rep(i,n){ int c,d; cin>>c>>d; x[i]=pint(c,i); y[i]=pint(d,i); } sort(x,x+n); sort(y,y+n); rep(i,71)rep(j,71)a[i][j]=1; a[0][70]=x[0].first-1; rep(i,n-1)a[2*i+2][70]=x[i+1].first-x[i].first-1; a[2*n][70]=w-x[n-1].first; a[70][0]=y[0].first-1; rep(i,n-1)a[70][2*i+2]=y[i+1].first-y[i].first-1; a[70][2*n]=h-y[n-1].first; rep(i,2*n+1)rep(j,2*n+1)a[i][j]=a[70][j]*a[i][70]; rep(i,n){ p[x[i].second].first=2*i+1; p[y[i].second].second=2*i+1; } rep(i,2*n+1)rep(j,2*n+1)rep(k,2*n+1)rep(l,2*n+1) dp[i][j][k][l]=-1; cout<<rec(0,2*n,0,2*n)<<endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - 金塊ゲーム |
User | tempura0224 |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 1538 Byte |
Status | AC |
Exec Time | 48 ms |
Memory | 163968 KB |
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | Subtask3 | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 80 / 80 | 19 / 19 | 1 / 1 | ||||||||
Status |
|
|
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt |
Subtask1 | 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 | 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 |
Subtask3 | 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, subtask3_01.txt, subtask3_02.txt, subtask3_03.txt, subtask3_04.txt, subtask3_05.txt, subtask3_06.txt, subtask3_07.txt, subtask3_08.txt, subtask3_09.txt, subtask3_10.txt, subtask3_11.txt, subtask3_12.txt, subtask3_13.txt, subtask3_14.txt, subtask3_15.txt, subtask3_16.txt, subtask3_17.txt, subtask3_18.txt, subtask3_19.txt, subtask3_20.txt, subtask3_21.txt, subtask3_22.txt, subtask3_23.txt, subtask3_24.txt, subtask3_25.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 4 ms | 16768 KB |
sample_02.txt | AC | 4 ms | 16768 KB |
sample_03.txt | AC | 10 ms | 43520 KB |
subtask1_01.txt | AC | 5 ms | 20864 KB |
subtask1_02.txt | AC | 3 ms | 10624 KB |
subtask1_03.txt | AC | 10 ms | 43520 KB |
subtask1_04.txt | AC | 10 ms | 43520 KB |
subtask1_05.txt | AC | 4 ms | 16768 KB |
subtask1_06.txt | AC | 5 ms | 20864 KB |
subtask1_07.txt | AC | 6 ms | 27008 KB |
subtask1_08.txt | AC | 2 ms | 4480 KB |
subtask1_09.txt | AC | 6 ms | 27008 KB |
subtask1_10.txt | AC | 3 ms | 10624 KB |
subtask1_11.txt | AC | 5 ms | 20864 KB |
subtask1_12.txt | AC | 7 ms | 31104 KB |
subtask1_13.txt | AC | 7 ms | 31104 KB |
subtask1_14.txt | AC | 7 ms | 31104 KB |
subtask1_15.txt | AC | 10 ms | 43520 KB |
subtask1_16.txt | AC | 10 ms | 43520 KB |
subtask1_17.txt | AC | 10 ms | 43520 KB |
subtask1_18.txt | AC | 10 ms | 43520 KB |
subtask1_19.txt | AC | 10 ms | 43520 KB |
subtask1_20.txt | AC | 10 ms | 43520 KB |
subtask1_21.txt | AC | 10 ms | 43520 KB |
subtask1_22.txt | AC | 10 ms | 43520 KB |
subtask1_23.txt | AC | 10 ms | 43520 KB |
subtask1_24.txt | AC | 10 ms | 43520 KB |
subtask1_25.txt | AC | 10 ms | 43520 KB |
subtask2_01.txt | AC | 18 ms | 80768 KB |
subtask2_02.txt | AC | 18 ms | 80768 KB |
subtask2_03.txt | AC | 26 ms | 109952 KB |
subtask2_04.txt | AC | 26 ms | 109952 KB |
subtask2_05.txt | AC | 32 ms | 126592 KB |
subtask2_06.txt | AC | 35 ms | 137088 KB |
subtask2_07.txt | AC | 35 ms | 137088 KB |
subtask2_08.txt | AC | 35 ms | 137088 KB |
subtask2_09.txt | AC | 47 ms | 163968 KB |
subtask2_10.txt | AC | 47 ms | 163968 KB |
subtask2_11.txt | AC | 47 ms | 163968 KB |
subtask2_12.txt | AC | 47 ms | 163968 KB |
subtask2_13.txt | AC | 35 ms | 137088 KB |
subtask2_14.txt | AC | 35 ms | 137088 KB |
subtask2_15.txt | AC | 12 ms | 53888 KB |
subtask2_16.txt | AC | 35 ms | 137088 KB |
subtask2_17.txt | AC | 47 ms | 163968 KB |
subtask2_18.txt | AC | 48 ms | 163968 KB |
subtask2_19.txt | AC | 47 ms | 163968 KB |
subtask2_20.txt | AC | 47 ms | 163968 KB |
subtask2_21.txt | AC | 47 ms | 163968 KB |
subtask2_22.txt | AC | 47 ms | 163968 KB |
subtask2_23.txt | AC | 47 ms | 163968 KB |
subtask2_24.txt | AC | 47 ms | 163968 KB |
subtask2_25.txt | AC | 48 ms | 163968 KB |
subtask3_01.txt | AC | 7 ms | 31232 KB |
subtask3_02.txt | AC | 18 ms | 80768 KB |
subtask3_03.txt | AC | 18 ms | 80768 KB |
subtask3_04.txt | AC | 23 ms | 97408 KB |
subtask3_05.txt | AC | 30 ms | 120320 KB |
subtask3_06.txt | AC | 26 ms | 109952 KB |
subtask3_07.txt | AC | 26 ms | 109952 KB |
subtask3_08.txt | AC | 35 ms | 137088 KB |
subtask3_09.txt | AC | 36 ms | 137088 KB |
subtask3_10.txt | AC | 47 ms | 163968 KB |
subtask3_11.txt | AC | 47 ms | 163968 KB |
subtask3_12.txt | AC | 47 ms | 163968 KB |
subtask3_13.txt | AC | 47 ms | 163968 KB |
subtask3_14.txt | AC | 47 ms | 163968 KB |
subtask3_15.txt | AC | 47 ms | 163968 KB |
subtask3_16.txt | AC | 47 ms | 163968 KB |
subtask3_17.txt | AC | 47 ms | 163968 KB |
subtask3_18.txt | AC | 31 ms | 126592 KB |
subtask3_19.txt | AC | 47 ms | 163968 KB |
subtask3_20.txt | AC | 35 ms | 137088 KB |
subtask3_21.txt | AC | 47 ms | 163968 KB |
subtask3_22.txt | AC | 47 ms | 163968 KB |
subtask3_23.txt | AC | 47 ms | 163968 KB |
subtask3_24.txt | AC | 47 ms | 163968 KB |
subtask3_25.txt | AC | 47 ms | 163968 KB |