Submission #2116139


Source Code Expand

#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using ull = unsigned long long;
#define MOD 1000000007

int b[6],c[6];
int board[9];
const int INF=INT_MAX/2;

int solve(bool T){
  bool flag=1;
  for(int i=0;i<9;i++){
    if(board[i]==0) flag=0;
  }
  if(flag){
    int res=0;
    for(int i=0;i<6;i++){
      if(board[i]==board[i+3]){
        res+=b[i];
      }else{
        res-=b[i];
      }
    }
    for(int i=0;i<9;i+=3){
      for(int j=0;j<2;j++){
        if(board[i+j]==board[i+j+1]){
          res+=c[(i/3)*2+j];
        }else{
          res-=c[(i/3)*2+j];
        }
      }
    }
    return res;
  }
  int ans;
  if(T) ans=-INF;
  else ans=INF;
  for(int i=0;i<9;i++){
    if(board[i]==0){
      if(T){
        board[i]=1;
        ans=max(ans,solve(0));
        board[i]=0;
      }else{
        board[i]=2;
        ans=min(ans,solve(1));
        board[i]=0;
      }
    }
  }
  return ans;
}

int main(){
  for(int i=0;i<6;i++) cin>>b[i];
  for(int i=0;i<6;i++) cin>>c[i];
  for(int i=0;i<9;i++) board[i]=0;
  int ans=-INF;
  for(int i=0;i<9;i++){
    board[i]=1;
    ans=max(ans,solve(0));
    board[i]=0;
  }
  int sum=0;
  for(int i=0;i<6;i++) sum+=b[i];
  for(int i=0;i<6;i++) sum+=c[i];
  cout<<(sum+ans)/2<<endl;
  cout<<(sum-ans)/2<<endl;
  return 0;
}

Submission Info

Submission Time
Task C - 双子と○×ゲーム
User misosoup
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1360 Byte
Status AC
Exec Time 35 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 35 ms 256 KB
sample-02.txt AC 35 ms 256 KB
test-01.txt AC 35 ms 256 KB
test-02.txt AC 35 ms 256 KB
test-03.txt AC 35 ms 256 KB
test-04.txt AC 35 ms 256 KB
test-05.txt AC 35 ms 256 KB
test-06.txt AC 35 ms 256 KB
test-07.txt AC 35 ms 256 KB
test-08.txt AC 35 ms 256 KB
test-09.txt AC 35 ms 256 KB
test-10.txt AC 35 ms 256 KB
test-11.txt AC 35 ms 256 KB
test-12.txt AC 35 ms 256 KB
test-13.txt AC 35 ms 256 KB
test-14.txt AC 35 ms 256 KB
test-15.txt AC 35 ms 256 KB
test-16.txt AC 35 ms 256 KB
test-17.txt AC 35 ms 256 KB
test-18.txt AC 35 ms 256 KB
test-19.txt AC 35 ms 256 KB
test-20.txt AC 35 ms 256 KB