CSES - Leirikisa 9.12.2021 - Results
Submission details
Task:Ruudukko
Sender:henrikaalto
Submission time:2021-12-09 14:16:17 +0200
Language:C++ (C++17)
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED17
#2ACCEPTED42
#3ACCEPTED41
Test results
testverdicttimegroup
#1ACCEPTED0.01 s1details
#2ACCEPTED0.01 s1details
#3ACCEPTED0.01 s1details
#4ACCEPTED0.01 s1details
#5ACCEPTED0.01 s1details
#6ACCEPTED0.01 s2details
#7ACCEPTED0.01 s2details
#8ACCEPTED0.01 s2details
#9ACCEPTED0.01 s2details
#10ACCEPTED0.01 s2details
#11ACCEPTED0.05 s3details
#12ACCEPTED0.02 s3details
#13ACCEPTED0.01 s3details
#14ACCEPTED0.01 s3details
#15ACCEPTED0.01 s3details

Code

#include <bits/stdc++.h>
using namespace std;
int di[] {1, 0};
int dj[] {0, 1};
int main() {
  ios::sync_with_stdio(0);
  cin.tie(0);
  int n;
  cin >> n;
  string g[n];
  for (int i = 0; i < n; ++i) {
    cin >> g[i];
  }
  string ans{g[0][0]};
  set<pair<int, int>> q, nq;
  q.emplace(0, 0);
  for (int t = 0; t < n + n - 2; ++t) {
    nq.clear();
    char b = 'Z';
    for (auto [i, j] : q) {
      for (int k = 0; k < 2; ++k) {
        int ni = i + di[k];
        int nj = j + dj[k];
        if (ni >= n) continue;
        if (nj >= n) continue;
        b = min(b, g[ni][nj]);
      }
    }
    ans += b;
    for (auto [i, j] : q) {
      for (int k = 0; k < 2; ++k) {
        int ni = i + di[k];
        int nj = j + dj[k];
        if (ni >= n) continue;
        if (nj >= n) continue;
        if (g[ni][nj] == b) {
          nq.emplace(ni, nj);
        }
      }
    }
    q = nq;
  }
  cout << ans << endl;
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
5
AAAAA
AAAAA
AAAAA
AAAAA
...

correct output
AAAAAAAAB

user output
AAAAAAAAB

Test 2

Group: 1

Verdict: ACCEPTED

input
5
ABABA
BABAB
ABABA
BABAB
...

correct output
ABABABABA

user output
ABABABABA

Test 3

Group: 1

Verdict: ACCEPTED

input
5
WRYIU
TWLKH
UJMJC
GRDJW
...

correct output
WRWJMDJWK

user output
WRWJMDJWK

Test 4

Group: 1

Verdict: ACCEPTED

input
5
RUEAE
ZYHHW
KDBPD
DXREW
...

correct output
RUEAEWDWX

user output
RUEAEWDWX

Test 5

Group: 1

Verdict: ACCEPTED

input
5
SRGYR
MYDOB
GNOVM
SZOZK
...

correct output
SMGNOOLTU

user output
SMGNOOLTU

Test 6

Group: 2

Verdict: ACCEPTED

input
100
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

user output
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
Truncated

Test 7

Group: 2

Verdict: ACCEPTED

input
100
ABABABABABABABABABABABABABABAB...

correct output
ABABABABABABABABABABABABABABAB...

user output
ABABABABABABABABABABABABABABAB...
Truncated

Test 8

Group: 2

Verdict: ACCEPTED

input
100
FWOVNYKNMMQCNHJGUYPNEDXGVVGONC...

correct output
FWDBDECKBHKIACOVUCJGDJOHAYIBHO...

user output
FWDBDECKBHKIACOVUCJGDJOHAYIBHO...
Truncated

Test 9

Group: 2

Verdict: ACCEPTED

input
100
ETGCJABWKMAAEOQXWFFYMDJBMNKMQK...

correct output
EAARGLBRLHCDHHBPABHDAJBEEBHQBE...

user output
EAARGLBRLHCDHHBPABHDAJBEEBHQBE...
Truncated

Test 10

Group: 2

Verdict: ACCEPTED

input
100
GNWMLJNHSBAADUFCSGIZMWHZTVDHNR...

correct output
GEGOFRDKBNLLEUOPOEQCEFMTKANLNC...

user output
GEGOFRDKBNLLEUOPOEQCEFMTKANLNC...
Truncated

Test 11

Group: 3

Verdict: ACCEPTED

input
500
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

user output
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
Truncated

Test 12

Group: 3

Verdict: ACCEPTED

input
500
ABABABABABABABABABABABABABABAB...

correct output
ABABABABABABABABABABABABABABAB...

user output
ABABABABABABABABABABABABABABAB...
Truncated

Test 13

Group: 3

Verdict: ACCEPTED

input
500
HGADXTSFXYIEMDWMFIVQGHTACFUPYI...

correct output
HGADEJOGAKPJCRAHTABRSDLAVGBFAG...

user output
HGADEJOGAKPJCRAHTABRSDLAVGBFAG...
Truncated

Test 14

Group: 3

Verdict: ACCEPTED

input
500
SBLNMAZESQVGWAPZYHQJMQTNGMEZWS...

correct output
SBLCAMDHILGIDRCIDUNMMAHFYCENOS...

user output
SBLCAMDHILGIDRCIDUNMMAHFYCENOS...
Truncated

Test 15

Group: 3

Verdict: ACCEPTED

input
500
AOXYXRYFWPYWQDPWXQITLHQQUAYZAJ...

correct output
AOJLDOAPBGEKSGCNKBUMKAJCCWCOOD...

user output
AOJLDOAPBGEKSGCNKBUMKAJCCWCOOD...
Truncated