Submission details
Task:Robotti
Sender:worst
Submission time:2026-01-17 13:11:28 +0200
Language:C++ (C++20)
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED100
Test results
testverdicttime
#1ACCEPTED0.00 sdetails
#2ACCEPTED0.00 sdetails
#3ACCEPTED0.00 sdetails
#4ACCEPTED0.00 sdetails
#5ACCEPTED0.00 sdetails
#6ACCEPTED0.01 sdetails

Code

#include <bits/stdc++.h>

using namespace std;

void solve() {
    int n;
    cin >> n;
    vector<vector<char>> v(n + 2, vector<char>(n + 2, '.'));
    for (int i = 1; i <= n; i++) {
        for (int j = 1; j <= n; j++) {
            cin >> v[i][j];
        }
    }
    int ii = 0, jj = 1;
    char d = 'D';
    long long cnt = 0;
    while (true) {
        cnt++;
        if (v[ii][jj] == '/') {
            if (d == 'D') {
                d = 'L';
            } else if (d == 'R') {
                d = 'U';
            } else if (d == 'U') {
                d = 'R';
            } else {
                d = 'D';
            }
            v[ii][jj] = '\\';
        } else if (v[ii][jj] == '\\') {
            if (d == 'D') {
                d = 'R';
            } else if (d == 'R') {
                d = 'D';
            } else if (d == 'U') {
                d = 'L';
            } else {
                d = 'U';
            }
            v[ii][jj] = '/';
        }

        if (d == 'D') {
            ii++;
        } else if (d == 'R') {
            jj++;
        } else if (d == 'U') {
            ii--;
        } else {
            jj--;
        }
        
        if (ii == 0 || ii == n + 1 || jj == 0 || jj == n + 1) {
            break;
        }
    }

    cout << cnt - 1 << '\n';
}

int main() {
    int t = 1;
    // cin >> t;
    while (t--) {
        solve();
    }
    return 0;
}

Test details

Test 1 (public)

Verdict: ACCEPTED

input
3
./\
\./
\/.

correct output
13

user output
13

Test 2

Verdict: ACCEPTED

input
1
.

correct output
1

user output
1

Test 3

Verdict: ACCEPTED

input
5
./\/\
.....
.....
.....
...

correct output
25

user output
25

Test 4

Verdict: ACCEPTED

input
5
\\/\\
/\/\/
\\/\\
/\/\/
...

correct output
37

user output
37

Test 5

Verdict: ACCEPTED

input
20
\\/\/\/\\./\\.\/\/\.
/\\\\\\/\\\\\\\\\\\.
\\\\\\\\\\\\\\\\\\\\
/\\\\\\\\\\\\\.\\\\\
...

correct output
2519

user output
2519

Test 6

Verdict: ACCEPTED

input
20
\\..................
.\\..............\\.
..\\............\\..
...\\..........\\...
...

correct output
917489

user output
917489