QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#638941 | #8935. Puzzle: Easy as Scrabble | ucup-team173 | WA | 0ms | 3572kb | C++20 | 3.0kb | 2024-10-13 17:22:54 | 2024-10-13 17:22:54 |
Judging History
answer
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
void solve() {
int n, m;
cin >> n >> m;
vector<string> s(n + 2);
for(int i = 0; i < n + 2; i++) {
cin >> s[i];
}
string up(m + 1, 0), dw(m + 1, 0), lt(n + 1, 0), rt(n + 1, 0);
for(int i = 1; i <= m; i++) {
up[i] = s[0][i];
dw[i] = s[n + 1][i];
}
for(int i = 1; i <= n; i++) {
lt[i] = s[i][0];
rt[i] = s[i][m + 1];
}
for(int j = 1; j <= m; j++) {
int l = 0, r = n + 1;
if(up[j] != '.') {
for(l = 1; l <= n; l++) {
if(s[l][j] != 'x' && (lt[l] == '.' || lt[l] == up[j])) {
s[l][j] = up[j];
if(lt[l] == up[j]) lt[l] = '.';
break;
} else {
s[l][j] = 'x';
}
}
}
if(dw[j] != '.') {
for(r = n; r; r--) {
if(s[r][j] != 'x' && (lt[r] == '.' || lt[r] == dw[j])) {
s[r][j] = dw[j];
if(lt[r] == dw[j]) lt[r] = '.';
break;
} else {
s[r][j] = 'x';
}
}
}
if(l > n || r <= 0) {
cout << "NO\n";
return;
}
for(int i = l + 1; i < r; i++) {
if(lt[i] != '.' && s[i][j] == '.') {
s[i][j] = lt[i];
lt[i] = '.';
}
}
}
for(int i = 1; i <= n; i++) {
for(int j = 1; j <= m; j++) {
if(s[i][j] == 'x') s[i][j] = '.';
cout << s[i][j];
}
cout << '\n';
}
for(int i = 1; i <= n; i++) {
if(lt[i] != '.') {
int flg = 0;
for(int j = 1; j <= m; j++) {
if(s[i][j] == '.' || s[i][j] == lt[i]) {
s[i][j] = lt[i];
flg = 1;
break;
}
}
if(!flg) {
cout << "NO\n";
return;
}
}
if(rt[i] != '.') {
int flg = 0;
for(int j = m; j; j--) {
if(s[i][j] == '.' || s[i][j] == rt[i]) {
s[i][j] = rt[i];
flg = 1;
break;
}
}
if(!flg) {
cout << "NO\n";
return;
}
}
}
cout << "YES\n";
for(int i = 1; i <= n; i++) {
for(int j = 1; j <= m; j++) {
if(s[i][j] == 'x') s[i][j] = '.';
cout << s[i][j];
}
cout << '\n';
}
}
int main() {
ios::sync_with_stdio(0);
cin.tie(0), cout.tie(0);
int t = 1;
// cin >> t;
while(t--) solve();
return 0;
}
/*
5 5
.CBA...
....x..
..x...C
A.....B
B..x..A
C......
.......
1 2
....
Nx..
..O.
5 5
.AB....
A......
A......
A......
A......
A......
.......
*/
详细
Test #1:
score: 0
Wrong Answer
time: 0ms
memory: 3572kb
input:
5 5 .CBA... ....x.. ..x...C A.....B B..x..A C...... .......
output:
CBA.. ..... A.... B.... C.... YES CBA.. ....C A...B B...A C....
result:
wrong answer YES or NO expected in answer, but CBA.. found.