結果
問題 | No.43 野球の試合 |
ユーザー | 41Toame |
提出日時 | 2018-08-23 19:15:43 |
言語 | C++14 (gcc 12.3.0 + boost 1.83.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,348 bytes |
コンパイル時間 | 1,796 ms |
コンパイル使用メモリ | 169,028 KB |
実行使用メモリ | 8,576 KB |
最終ジャッジ日時 | 2024-06-08 02:20:15 |
合計ジャッジ時間 | 10,452 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 1 ms
5,248 KB |
testcase_01 | AC | 1 ms
5,376 KB |
testcase_02 | WA | - |
testcase_03 | AC | 2 ms
5,376 KB |
testcase_04 | AC | 2 ms
5,376 KB |
testcase_05 | AC | 2 ms
5,376 KB |
testcase_06 | WA | - |
testcase_07 | TLE | - |
testcase_08 | -- | - |
testcase_09 | -- | - |
testcase_10 | -- | - |
ソースコード
#include "bits/stdc++.h" using namespace std; #define ll long long int #define rep(i,n) for( int i = 0; i < n; i++ ) #define rrep(i,n) for( int i = n; i >= 0; i-- ) #define REP(i,s,t) for( int i = s; i <= t; i++ ) #define RREP(i,s,t) for( int i = s; i >= t; i-- ) #define dump(x) cerr << #x << " = " << (x) << endl; #define INF 2000000000 #define mod 1000000007 #define INF2 1000000000000000000 int N; char s[6][6]; int rk(char a[6][6]) { int score[N] = {}; rep(i, N) rep(j, N) if (s[i][j] == 'o') score[i]++; int tmp = score[0]; //rep(i, N) cout << score[i] << " "; //cout << endl; sort(score, score + N, greater<int>()); int rank = 1; int j = 0; while(true) { int k = score[j]; if (k == tmp) return rank; while (k == score[j]) j++; rank++; } } int ans = 6; void dfs(char a[6][6]) { int R = N; rep(i, N) { rep(j, N) { if (i >= j) continue; if (a[i][j] == '-') { a[i][j] = 'o'; a[j][i] = 'x'; dfs(a); a[i][j] = 'x'; a[j][i] = 'o'; dfs(a); a[i][j] = '-'; a[j][i] = '-'; } } } //rep(i, N) { // rep(j, N) { // cout << a[i][j]; // } // cout << endl; //} //cout << rk(a) << endl; ans = min(ans, rk(a)); } int main(void) { cin.tie(0); ios::sync_with_stdio(false); cin >> N; rep(i, N) rep(j, N) cin >> s[i][j]; dfs(s); cout << ans << endl; return 0; }