結果
| 問題 |
No.197 手品
|
| コンテスト | |
| ユーザー |
mayoko_
|
| 提出日時 | 2015-05-01 16:43:22 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0) |
| 結果 |
AC
|
| 実行時間 | 2 ms / 1,000 ms |
| コード長 | 1,014 bytes |
| コンパイル時間 | 1,353 ms |
| コンパイル使用メモリ | 160,340 KB |
| 実行使用メモリ | 5,376 KB |
| 最終ジャッジ日時 | 2024-07-20 03:37:22 |
| 合計ジャッジ時間 | 2,691 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 43 |
ソースコード
#include <bits/stdc++.h>
#define rep(i, n) for (int (i) = 0; (i) < (int)(n); (i)++)
const int dx[] = {1, 0, -1, 0};
const int dy[] = {0, 1, 0, -1};
using namespace std;
typedef long long ll;
bool dfs(string s, const string& t, int cur, int N) {
if (cur == N) {
if (s == t) return true;
else return false;
}
swap(s[0], s[1]);
if (dfs(s, t, cur+1, N)) return true;
swap(s[0], s[1]);
swap(s[1], s[2]);
if (dfs(s, t, cur+1, N)) return true;
return false;
}
int main() {
cin.tie(0);
ios::sync_with_stdio(false);
string s, t;
const string ok = "SUCCESS", ng = "FAILURE";
int N;
cin >> s;
cin >> N;
cin >> t;
N = min(N, 2);
int ss = 0, tt = 0;
for (int i = 0; i < 3; i++) {
if (s[i] == 'o') ss++;
if (t[i] == 'o') tt++;
}
if (ss != tt) {
cout << ok << endl;
return 0;
} else {
if (dfs(s, t, 0, N)) cout << ng << endl;
else cout << ok << endl;
}
return 0;
}
mayoko_