Submission #2199634
Source Code Expand
#include<vector> #include<iostream> #include<string> #include<algorithm> #include<math.h> #include<map> #include<functional> #include<queue> #include<stack> #include<string.h> #include<list> #include<limits> #include<bitset> #include<ctype.h> #include<set> using namespace std; typedef long long int ll; typedef pair<int,int> P; const ll MOD=1000000007LL; const ll INF=1000000000; const int MAX=100001; const double EPS=1e-10; int b[2][3]; int c[3][2]; int m[3][3]; P dfs(int x,int y,int t){ if(x!=-1){ m[x][y]=t; } bool f=false; P ret; if(t==1){ ret={0,INF}; }else{ ret={INF,0}; } for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ if(i==x&&j==y){ continue; } if(m[i][j]==0){ int sa=ret.first-ret.second; if(t==1){ P p=dfs(i,j,2); int sa2=p.first-p.second; if(sa<sa2){ ret=p; } }else{ P p=dfs(i,j,1); int sa2=p.first-p.second; if(sa>sa2){ ret=p; } } f=true; } } } if(!f){ ret={0,0}; for(int i=0;i<2;i++){ for(int j=0;j<3;j++){ if(m[i][j]==m[i+1][j]){ ret.first+=b[i][j]; }else{ ret.second+=b[i][j]; } } } for(int i=0;i<3;i++){ for(int j=0;j<2;j++){ if(m[i][j]==m[i][j+1]){ ret.first+=c[i][j]; }else{ ret.second+=c[i][j]; } } } } m[x][y]=0; return ret; } int main(){ for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ m[i][j]=0; } } for(int i=0;i<2;i++){ for(int j=0;j<3;j++){ cin>>b[i][j]; } } for(int i=0;i<3;i++){ for(int j=0;j<2;j++){ cin>>c[i][j]; } } P ans=dfs(-1,-1,1); cout<<ans.first<<endl; cout<<ans.second<<endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | C - 双子と○×ゲーム |
User | TAISA_ |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 2362 Byte |
Status | AC |
Exec Time | 57 ms |
Memory | 256 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 100 / 100 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample-01.txt, sample-02.txt |
All | sample-01.txt, sample-02.txt, test-01.txt, test-02.txt, test-03.txt, test-04.txt, test-05.txt, test-06.txt, test-07.txt, test-08.txt, test-09.txt, test-10.txt, test-11.txt, test-12.txt, test-13.txt, test-14.txt, test-15.txt, test-16.txt, test-17.txt, test-18.txt, test-19.txt, test-20.txt, sample-01.txt, sample-02.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample-01.txt | AC | 56 ms | 256 KB |
sample-02.txt | AC | 56 ms | 256 KB |
test-01.txt | AC | 56 ms | 256 KB |
test-02.txt | AC | 56 ms | 256 KB |
test-03.txt | AC | 56 ms | 256 KB |
test-04.txt | AC | 56 ms | 256 KB |
test-05.txt | AC | 56 ms | 256 KB |
test-06.txt | AC | 56 ms | 256 KB |
test-07.txt | AC | 56 ms | 256 KB |
test-08.txt | AC | 56 ms | 256 KB |
test-09.txt | AC | 56 ms | 256 KB |
test-10.txt | AC | 56 ms | 256 KB |
test-11.txt | AC | 56 ms | 256 KB |
test-12.txt | AC | 56 ms | 256 KB |
test-13.txt | AC | 56 ms | 256 KB |
test-14.txt | AC | 56 ms | 256 KB |
test-15.txt | AC | 56 ms | 256 KB |
test-16.txt | AC | 57 ms | 256 KB |
test-17.txt | AC | 56 ms | 256 KB |
test-18.txt | AC | 56 ms | 256 KB |
test-19.txt | AC | 56 ms | 256 KB |
test-20.txt | AC | 56 ms | 256 KB |