提出 #34484702
ソースコード 拡げる
#include <bits/stdc++.h>
#define rep(i,a,n) for (int i=a;i<(int)n;i++)
#define pb push_back
int read(){int r;scanf("%d",&r);return r;} // read
char s[10][10];
int main(){
int n = read();
rep(i,0,n) scanf("%s",s[i]);
int fT = 0;
int fS = 0;
std::vector<std::array<int,3>> ts;
rep(j,0,n) {
int cw = 0;
int cb = 0;
rep(i,0,n){
if(s[i][j] == 'W'){
ts.push_back({i-cw,1,'W'});
fT += i-cw;
fS ++;
cw++;
}
if(s[i][j] == 'B'){
ts.push_back({1,i-cb,'B'});
fS += i-cb;
fT ++;
cb++;
}
}
}
std::vector<bool> vis(ts.size(),false);
auto ft = [=](int i) { return ts[i][2]=='W' ? -1 : (ts[i][1] - ts[i][0]);};
auto fs = [=](int i) { return ts[i][2]=='B' ? -1 : (ts[i][0] - ts[i][1]);};
while(true){
if(fT <= 0){
printf("Snuke\n");
return 0;
}
int tsi = -1;
rep(i,0,ts.size()) if(
!vis[i] &&
ts[i][0] &&
(tsi == -1 || ft(i) > ft(tsi) || (ft(i) == ft(tsi) && ts[i][2] == 'W'))
) tsi = i;
if(tsi == -1){
printf("Snuke\n");
return 0;
}
if(ts[tsi][2] == 'W'){
fT -= 1;
ts[tsi][0] --;
}else if(ts[tsi][2] == 'B'){
vis[tsi] = true;
fT -= ts[tsi][0];
fS -= ts[tsi][1];
}
// -----------------------------------------------------
if(fS <= 0){
printf("Takahashi\n");
return 0;
}
tsi = -1;
rep(i,0,ts.size()) if(
!vis[i] &&
ts[i][1] &&
(tsi == -1 || fs(i) > fs(tsi) || (fs(i) == fs(tsi) && ts[i][2] == 'B'))
) tsi = i;
if(tsi == -1){
printf("Takahashi\n");
return 0;
}
if(ts[tsi][2] == 'B'){
fS -= 1;
ts[tsi][1] --;
}else if(ts[tsi][2] == 'W'){
vis[tsi] = true;
fT -= ts[tsi][0];
fS -= ts[tsi][1];
}
}
return 0;
}
// n * n 正方形
// 可能 空/1个白/1个黑
提出情報
| 提出日時 | |
|---|---|
| 問題 | H - Advance or Eat |
| ユーザ | cromarmot |
| 言語 | C++ (GCC 9.2.1) |
| 得点 | 0 |
| コード長 | 1916 Byte |
| 結果 | WA |
| 実行時間 | 13 ms |
| メモリ | 3640 KiB |
コンパイルエラー
./Main.cpp: In function ‘int read()’:
./Main.cpp:5:23: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
5 | int read(){int r;scanf("%d",&r);return r;} // read
| ~~~~~^~~~~~~~~
./Main.cpp: In function ‘int main()’:
./Main.cpp:10:19: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
10 | rep(i,0,n) scanf("%s",s[i]);
| ~~~~~^~~~~~~~~~~
ジャッジ結果
| セット名 | Sample | All | ||||||
|---|---|---|---|---|---|---|---|---|
| 得点 / 配点 | 0 / 0 | 0 / 600 | ||||||
| 結果 |
|
|
| セット名 | テストケース |
|---|---|
| Sample | example0.txt, example1.txt, example2.txt |
| All | 000.txt, 001.txt, 002.txt, 003.txt, 004.txt, 005.txt, 006.txt, 007.txt, 008.txt, 009.txt, 010.txt, 011.txt, 012.txt, 013.txt, 014.txt, 015.txt, 016.txt, 017.txt, 018.txt, 019.txt, 020.txt, 021.txt, 022.txt, 023.txt, 024.txt, 025.txt, 026.txt, 027.txt, 028.txt, 029.txt, 030.txt, 031.txt, 032.txt, 033.txt, 034.txt, 035.txt, 036.txt, 037.txt, 038.txt, 039.txt, 040.txt, 041.txt, 042.txt, 043.txt, 044.txt, 045.txt, 046.txt, 047.txt, 048.txt, 049.txt, 050.txt, 051.txt, 052.txt, 053.txt, 054.txt, 055.txt, 056.txt, 057.txt, 058.txt, 059.txt, 060.txt, 061.txt, 062.txt, 063.txt, 064.txt, 065.txt, 066.txt, 067.txt, 068.txt, 069.txt, 070.txt, 071.txt, 072.txt, 073.txt, 074.txt, 075.txt, 076.txt, 077.txt, 078.txt, 079.txt, 080.txt, 081.txt, 082.txt, 083.txt, 084.txt, 085.txt, 086.txt, 087.txt, 088.txt, 089.txt, 090.txt, 091.txt, 092.txt, 093.txt, 094.txt, 095.txt, 096.txt, 097.txt, 098.txt, 099.txt, 100.txt, 101.txt, 102.txt, 103.txt, 104.txt, 105.txt, example0.txt, example1.txt, example2.txt |
| ケース名 | 結果 | 実行時間 | メモリ |
|---|---|---|---|
| 000.txt | AC | 13 ms | 3444 KiB |
| 001.txt | AC | 2 ms | 3636 KiB |
| 002.txt | AC | 2 ms | 3616 KiB |
| 003.txt | AC | 2 ms | 3588 KiB |
| 004.txt | AC | 2 ms | 3620 KiB |
| 005.txt | AC | 2 ms | 3620 KiB |
| 006.txt | AC | 3 ms | 3572 KiB |
| 007.txt | WA | 2 ms | 3568 KiB |
| 008.txt | AC | 2 ms | 3436 KiB |
| 009.txt | AC | 2 ms | 3544 KiB |
| 010.txt | AC | 3 ms | 3428 KiB |
| 011.txt | WA | 3 ms | 3584 KiB |
| 012.txt | WA | 2 ms | 3612 KiB |
| 013.txt | AC | 2 ms | 3628 KiB |
| 014.txt | WA | 2 ms | 3636 KiB |
| 015.txt | WA | 2 ms | 3640 KiB |
| 016.txt | WA | 2 ms | 3512 KiB |
| 017.txt | WA | 2 ms | 3616 KiB |
| 018.txt | AC | 2 ms | 3572 KiB |
| 019.txt | AC | 2 ms | 3580 KiB |
| 020.txt | WA | 2 ms | 3496 KiB |
| 021.txt | AC | 2 ms | 3544 KiB |
| 022.txt | WA | 1 ms | 3624 KiB |
| 023.txt | WA | 2 ms | 3548 KiB |
| 024.txt | AC | 3 ms | 3620 KiB |
| 025.txt | WA | 2 ms | 3436 KiB |
| 026.txt | WA | 3 ms | 3640 KiB |
| 027.txt | WA | 2 ms | 3572 KiB |
| 028.txt | AC | 2 ms | 3628 KiB |
| 029.txt | AC | 2 ms | 3540 KiB |
| 030.txt | AC | 3 ms | 3612 KiB |
| 031.txt | AC | 4 ms | 3632 KiB |
| 032.txt | AC | 4 ms | 3572 KiB |
| 033.txt | AC | 2 ms | 3624 KiB |
| 034.txt | AC | 2 ms | 3584 KiB |
| 035.txt | AC | 3 ms | 3616 KiB |
| 036.txt | AC | 2 ms | 3564 KiB |
| 037.txt | AC | 2 ms | 3612 KiB |
| 038.txt | AC | 2 ms | 3620 KiB |
| 039.txt | AC | 2 ms | 3632 KiB |
| 040.txt | AC | 2 ms | 3484 KiB |
| 041.txt | AC | 3 ms | 3516 KiB |
| 042.txt | AC | 1 ms | 3632 KiB |
| 043.txt | AC | 2 ms | 3620 KiB |
| 044.txt | AC | 2 ms | 3584 KiB |
| 045.txt | AC | 2 ms | 3636 KiB |
| 046.txt | AC | 2 ms | 3572 KiB |
| 047.txt | AC | 2 ms | 3436 KiB |
| 048.txt | AC | 3 ms | 3632 KiB |
| 049.txt | AC | 2 ms | 3632 KiB |
| 050.txt | AC | 2 ms | 3516 KiB |
| 051.txt | AC | 1 ms | 3516 KiB |
| 052.txt | AC | 2 ms | 3484 KiB |
| 053.txt | AC | 3 ms | 3620 KiB |
| 054.txt | AC | 2 ms | 3548 KiB |
| 055.txt | AC | 2 ms | 3580 KiB |
| 056.txt | AC | 3 ms | 3632 KiB |
| 057.txt | WA | 2 ms | 3628 KiB |
| 058.txt | AC | 2 ms | 3636 KiB |
| 059.txt | AC | 2 ms | 3432 KiB |
| 060.txt | AC | 2 ms | 3512 KiB |
| 061.txt | AC | 2 ms | 3584 KiB |
| 062.txt | AC | 2 ms | 3436 KiB |
| 063.txt | AC | 8 ms | 3620 KiB |
| 064.txt | AC | 2 ms | 3564 KiB |
| 065.txt | AC | 2 ms | 3572 KiB |
| 066.txt | WA | 2 ms | 3584 KiB |
| 067.txt | AC | 2 ms | 3624 KiB |
| 068.txt | AC | 2 ms | 3616 KiB |
| 069.txt | AC | 2 ms | 3616 KiB |
| 070.txt | AC | 2 ms | 3484 KiB |
| 071.txt | AC | 3 ms | 3512 KiB |
| 072.txt | AC | 2 ms | 3636 KiB |
| 073.txt | AC | 3 ms | 3620 KiB |
| 074.txt | AC | 2 ms | 3568 KiB |
| 075.txt | AC | 2 ms | 3516 KiB |
| 076.txt | AC | 2 ms | 3436 KiB |
| 077.txt | AC | 3 ms | 3636 KiB |
| 078.txt | AC | 2 ms | 3432 KiB |
| 079.txt | AC | 2 ms | 3576 KiB |
| 080.txt | AC | 2 ms | 3488 KiB |
| 081.txt | AC | 6 ms | 3584 KiB |
| 082.txt | AC | 2 ms | 3584 KiB |
| 083.txt | AC | 2 ms | 3588 KiB |
| 084.txt | AC | 2 ms | 3488 KiB |
| 085.txt | AC | 2 ms | 3588 KiB |
| 086.txt | AC | 2 ms | 3484 KiB |
| 087.txt | AC | 2 ms | 3620 KiB |
| 088.txt | AC | 2 ms | 3484 KiB |
| 089.txt | AC | 2 ms | 3432 KiB |
| 090.txt | AC | 2 ms | 3584 KiB |
| 091.txt | AC | 2 ms | 3620 KiB |
| 092.txt | AC | 2 ms | 3636 KiB |
| 093.txt | WA | 2 ms | 3636 KiB |
| 094.txt | AC | 2 ms | 3624 KiB |
| 095.txt | AC | 2 ms | 3620 KiB |
| 096.txt | AC | 4 ms | 3616 KiB |
| 097.txt | WA | 2 ms | 3616 KiB |
| 098.txt | AC | 2 ms | 3572 KiB |
| 099.txt | AC | 2 ms | 3552 KiB |
| 100.txt | AC | 2 ms | 3512 KiB |
| 101.txt | AC | 2 ms | 3516 KiB |
| 102.txt | AC | 2 ms | 3572 KiB |
| 103.txt | AC | 2 ms | 3616 KiB |
| 104.txt | AC | 2 ms | 3488 KiB |
| 105.txt | AC | 2 ms | 3620 KiB |
| example0.txt | AC | 3 ms | 3620 KiB |
| example1.txt | AC | 2 ms | 3432 KiB |
| example2.txt | AC | 2 ms | 3632 KiB |