Submission #3359895


Source Code Expand

#include <iostream>
using namespace std;
char board[3][3];
int b[2][3];
int c[3][2];
int calc(){
    int kai=0;
    for(int i=0;i<2;i++){
        for(int j=0;j<3;j++){
            if(board[i][j]==board[i+1][j]){
                kai+=b[i][j];
            }
        }
    }
    for(int i=0;i<3;i++){
        for(int j=0;j<2;j++){
            if(board[i][j]==board[i][j+1]){
                kai+=c[i][j];
            }
        }
    }
    return kai;
}

int dfs(int ret){
    if(ret==9)return calc();
    else if(ret%2==0){
        int MIN=-1;
        for(int i=0;i<3;i++){
            for(int j=0;j<3;j++){
                if(board[i][j]!='*')continue;
                board[i][j]='o';
                MIN=max(MIN,dfs(ret+1));
                board[i][j]='*';
            }
        }
        return MIN;
    }
    else if(ret%2==1){
        int MAX=1<<30;
        for(int i=0;i<3;i++){
            for(int j=0;j<3;j++){
                if(board[i][j]!='*')continue;
                board[i][j]='x';
                MAX=min(MAX,dfs(ret+1));
                board[i][j]='*';
            }
        }
        return MAX;
    }
}

int main(void){
    int total=0;
    for(int i=0;i<3;i++){
        for(int j=0;j<3;j++){
            board[i][j]='*';
        }
    }
    for(int i=0;i<2;i++){
        for(int j=0;j<3;j++){
            int a;
            cin>>a;
            b[i][j]=a;
            total+=a;
        }
    }
    for(int i=0;i<3;i++){
        for(int j=0;j<2;j++){
            int a;
            cin>>a;
            c[i][j]=a;
            total+=a;
        }
    }
    int ans=0;
    ans=dfs(0);
    cout<<ans<<endl;
    cout<<total-ans<<endl;
}

Submission Info

Submission Time
Task C - 双子と○×ゲーム
User alorie
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1731 Byte
Status AC
Exec Time 27 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 2
AC × 24
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 27 ms 256 KB
sample-02.txt AC 27 ms 256 KB
test-01.txt AC 27 ms 256 KB
test-02.txt AC 27 ms 256 KB
test-03.txt AC 27 ms 256 KB
test-04.txt AC 27 ms 256 KB
test-05.txt AC 27 ms 256 KB
test-06.txt AC 27 ms 256 KB
test-07.txt AC 27 ms 256 KB
test-08.txt AC 27 ms 256 KB
test-09.txt AC 27 ms 256 KB
test-10.txt AC 27 ms 256 KB
test-11.txt AC 27 ms 256 KB
test-12.txt AC 27 ms 256 KB
test-13.txt AC 27 ms 256 KB
test-14.txt AC 27 ms 256 KB
test-15.txt AC 27 ms 256 KB
test-16.txt AC 27 ms 256 KB
test-17.txt AC 27 ms 256 KB
test-18.txt AC 27 ms 256 KB
test-19.txt AC 27 ms 256 KB
test-20.txt AC 27 ms 256 KB