結果
| 問題 | No.351 市松スライドパズル |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-03-14 11:18:30 |
| 言語 | C++11(廃止可能性あり) (gcc 13.3.0 + boost 1.89.0) |
| 結果 |
AC
|
| 実行時間 | 323 ms / 2,000 ms |
| コード長 | 662 bytes |
| 記録 | |
| コンパイル時間 | 1,367 ms |
| コンパイル使用メモリ | 163,936 KB |
| 実行使用メモリ | 11,008 KB |
| 最終ジャッジ日時 | 2024-09-25 02:57:20 |
| 合計ジャッジ時間 | 5,464 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 17 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
typedef vector< pair<char, int> > CtrlInp;
int main(int argc, char** argv)
{
int h, w, n; cin >> h >> w >> n;
CtrlInp ctrl;
ctrl.reserve( n );
for (int ii=0; ii<n; ++ii) {
char dir;
int num;
cin >> dir >> num;
ctrl.push_back( make_pair(dir, num) );
}
int col=0, row=0;
CtrlInp::reverse_iterator ritr = ctrl.rbegin();
for (; ritr!=ctrl.rend(); ++ritr) {
if ( ritr->first == 'R' && ritr->second == row ) {
col = (col+w-1) % w;
}
else if ( ritr->first == 'C' && ritr->second == col ) {
row = (row+h-1) % h;
}
}
cout << ((row+col)%2==0 ? "white" : "black") << endl;
return 0;
}