| Task: | Abandoned warehouse |
| Sender: | Kemm1706 |
| Submission time: | 2025-09-08 17:20:01 +0300 |
| Language: | C++ (C++11) |
| Status: | READY |
| Result: | WRONG ANSWER |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | details |
| #2 | ACCEPTED | 0.00 s | details |
| #3 | WRONG ANSWER | 0.00 s | details |
| #4 | WRONG ANSWER | 0.00 s | details |
| #5 | WRONG ANSWER | 0.00 s | details |
| #6 | ACCEPTED | 0.02 s | details |
| #7 | RUNTIME ERROR | 0.41 s | details |
| #8 | RUNTIME ERROR | 0.39 s | details |
| #9 | RUNTIME ERROR | 0.39 s | details |
| #10 | RUNTIME ERROR | 0.39 s | details |
| #11 | ACCEPTED | 0.07 s | details |
| #12 | ACCEPTED | 0.01 s | details |
| #13 | RUNTIME ERROR | 0.39 s | details |
| #14 | ACCEPTED | 0.00 s | details |
| #15 | ACCEPTED | 0.00 s | details |
| #16 | RUNTIME ERROR | 0.39 s | details |
Compiler report
input/code.cpp: In function 'int main()':
input/code.cpp:81:14: warning: 'jj' may be used uninitialized in this function [-Wmaybe-uninitialized]
81 | s = solve(s, vs, ii, jj, vis, n, m);
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
input/code.cpp:81:14: warning: 'ii' may be used uninitialized in this function [-Wmaybe-uninitialized]Code
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef vector <ll> vl;
typedef pair <ll, ll> pl;
typedef vector <vl> vvl;
bool valid(ll i, ll j, ll n, ll m, const vvl &vis)
{
if(i >= 0 && j >= 0 && i < n && j < m && !vis[i][j])
return true;
return false;
}
string solve(string s, const vector <string> vs, ll i, ll j, vvl &vis, ll n, ll m)
{
//cerr << i << " " << j << " " << vs[i][j] << "\n";
vis[i][j] = true; string k;
if(vs[i][j] == 'B')
return s;
if(valid(i + 1, j, n, m, vis))
{
s += 'D';
vis[i + 1][j] = true;
k = solve(s, vs, i + 1, j, vis, n, m);
if(k.length() > 0)
return k;
}
if(valid(i - 1, j, n, m, vis))
{
s += 'U';
vis[i - 1][j] = true;
k = solve(s, vs, i - 1, j, vis, n, m);
if(k.length() > 0)
return k;
}
if(valid(i, j + 1, n, m, vis))
{
s += 'R';
vis[i][j + 1] = true;
k = solve(s, vs, i, j + 1, vis, n, m);
if(k.length() > 0)
return k;
}
if(valid(i, j - 1, n, m, vis))
{
s += 'L';
vis[i][j - 1] = true;
k = solve(s, vs, i, j - 1, vis, n, m);
if(k.length() > 0)
return k;
}
return "";
}
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
ll n, m, i, j, ii, jj;
cin >> n >> m;
vector <string> vs(n);
vvl vis(n, vl(m, 0));
for(i = 0; i < n; i++)
cin >> vs[i];
for(i = 0; i < n; i++)
{
for(j = 0; j < m; j++)
{
if(vs[i][j] == 'A')
{
ii = i;
jj = j;
}
if(vs[i][j] == '#')
vis[i][j] = true;
}
}
string s;
s = solve(s, vs, ii, jj, vis, n, m);
if(s.length() == 0)
cout << "NO";
else
cout << "YES\n" << s.length() << "\n" << s;
return 0;
}
Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 10 10 ##.A###### #.##.##.## #####..### .######### ... |
| correct output |
|---|
| NO |
| user output |
|---|
| NO |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 10 10 B#..##.#.. #....A##.. #.....#..# .#......#. ... |
| correct output |
|---|
| NO |
| user output |
|---|
| NO |
Test 3
Verdict: WRONG ANSWER
| input |
|---|
| 10 10 ...#..A.#. ....B...## ...#...... .......... ... |
| correct output |
|---|
| YES 3 LLD |
| user output |
|---|
| YES 10 DDDDLUUULD |
Test 4
Verdict: WRONG ANSWER
| input |
|---|
| 10 10 .#........ .......... .......... ........#. ... |
| correct output |
|---|
| YES 1 R |
| user output |
|---|
| YES 3 DRU |
Test 5
Verdict: WRONG ANSWER
| input |
|---|
| 10 10 .......... .......... .......... .......... ... |
| correct output |
|---|
| YES 3 RDD |
| user output |
|---|
| YES 7 DDDDRUU |
Test 6
Verdict: ACCEPTED
| input |
|---|
| 1000 1000 ##.###..######.#########.###.#... |
| correct output |
|---|
| NO |
| user output |
|---|
| NO |
Test 7
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 1000 ####.#.###....#.......##.##.#.... |
| correct output |
|---|
| YES 626 LLLDDRDDDDLDLDDLLLLLDDDDLLDLDL... |
| user output |
|---|
| (empty) |
Test 8
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 1000 ....#.##......#....#......#...... |
| correct output |
|---|
| YES 364 LULULLULLLULLLLLUULLLLUUULLLLL... |
| user output |
|---|
| (empty) |
Test 9
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 1000 .................#......#........ |
| correct output |
|---|
| YES 1003 LLLLLLLLLLLLLLLLLLLLLLLLLDLLLL... |
| user output |
|---|
| (empty) |
Test 10
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 1000 ................................. |
| correct output |
|---|
| YES 947 LLLLLLLLLLLLLLLLLLLLLLLLLLLLLL... |
| user output |
|---|
| (empty) |
Test 11
Verdict: ACCEPTED
| input |
|---|
| 1000 3 A#B .#. .#. .#. ... |
| correct output |
|---|
| YES 2000 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDD... |
| user output |
|---|
| YES 2000 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDD... Truncated |
Test 12
Verdict: ACCEPTED
| input |
|---|
| 3 1000 A................................ |
| correct output |
|---|
| YES 2000 RRRRRRRRRRRRRRRRRRRRRRRRRRRRRR... |
| user output |
|---|
| YES 2000 RRRRRRRRRRRRRRRRRRRRRRRRRRRRRR... Truncated |
Test 13
Verdict: RUNTIME ERROR
| input |
|---|
| 999 999 A#...#...#...#...#...#...#...#... |
| correct output |
|---|
| YES 499998 DDDDDDDDDDDDDDDDDDDDDDDDDDDDDD... |
| user output |
|---|
| (empty) |
Test 14
Verdict: ACCEPTED
| input |
|---|
| 1 3 A.B |
| correct output |
|---|
| YES 2 RR |
| user output |
|---|
| YES 2 RR |
Test 15
Verdict: ACCEPTED
| input |
|---|
| 2 2 ## AB |
| correct output |
|---|
| YES 1 R |
| user output |
|---|
| YES 1 R |
Test 16
Verdict: RUNTIME ERROR
| input |
|---|
| 1000 1000 A................................ |
| correct output |
|---|
| YES 1998 RRRRRRRRRRRRRRRRRRRRRRRRRRRRRR... |
| user output |
|---|
| (empty) |
