AtCoder Beginner Contest 025

Submission #1590223

Source codeソースコード

#include <bits/stdc++.h>

using namespace std;

int b[2][3], c[3][2], total = 0;
int a[3][3];

int calc(void) {
  int M = 0, W = 0;
  for (int i = 0; i < 2; i++) {
    for (int j = 0; j < 3; j++) {
      if (a[i][j] == a[i + 1][j]) {
        M += b[i][j];
      } else {
        W += b[i][j];
      }
    }
  }
  for (int i = 0; i < 3; i++) {
    for (int j = 0; j < 2; j++) {
      if (a[i][j] == a[i][j + 1]) {
        M += c[i][j];
      } else {
        W += c[i][j];
      }
    }
  }
  return M - W;
}

int dfs(int s) {
  if (s == 9) return calc();

  int res = s & 1 ? 1e9 : -1e9;
  for (int i = 0; i < 3; i++) {
    for (int j = 0; j < 3; j++) {
      if (a[i][j]) continue;
      if (s & 1) {
        a[i][j] = -1;
        res = min(res, dfs(s + 1));
      } else {
        a[i][j] = 1;
        res = max(res, dfs(s + 1));
      }
      a[i][j] = 0;
    }
  }

  return res;
}

int main(void) {
  for (int i = 0; i < 2; i++) {
    for (int j = 0; j < 3; j++) {
      cin >> b[i][j];
      total += b[i][j];
    }
  }
  for (int i = 0; i < 3; i++) {
    for (int j = 0; j < 2; j++) {
      cin >> c[i][j];
      total += c[i][j];
    }
  }

  int score = dfs(0);
  cout << (total + score) / 2 << endl;
  cout << (total - score) / 2 << endl;

  return 0;
}

Submission

Task問題 C - 双子と○×ゲーム
User nameユーザ名 legosuke
Created time投稿日時
Language言語 C++14 (GCC 5.4.1)
Status状態 AC
Score得点 100
Source lengthソースコード長 1333 Byte
File nameファイル名
Exec time実行時間 29 ms
Memory usageメモリ使用量 256 KB

Test case

Set

Set name Score得点 / Max score Cases
Sample - sample-01.txt,sample-02.txt
All 100 / 100 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

Test case

Case name Status状態 Exec time実行時間 Memory usageメモリ使用量
sample-01.txt AC 29 ms 256 KB
sample-02.txt AC 29 ms 256 KB
test-01.txt AC 29 ms 256 KB
test-02.txt AC 29 ms 256 KB
test-03.txt AC 29 ms 256 KB
test-04.txt AC 29 ms 256 KB
test-05.txt AC 29 ms 256 KB
test-06.txt AC 29 ms 256 KB
test-07.txt AC 29 ms 256 KB
test-08.txt AC 29 ms 256 KB
test-09.txt AC 29 ms 256 KB
test-10.txt AC 29 ms 256 KB
test-11.txt AC 29 ms 256 KB
test-12.txt AC 29 ms 256 KB
test-13.txt AC 29 ms 256 KB
test-14.txt AC 29 ms 256 KB
test-15.txt AC 29 ms 256 KB
test-16.txt AC 29 ms 256 KB
test-17.txt AC 29 ms 256 KB
test-18.txt AC 29 ms 256 KB
test-19.txt AC 29 ms 256 KB
test-20.txt AC 29 ms 256 KB