CSES - Leirikisa 9.12.2021 - Results
Submission details
Task:Ruudukko
Sender:Anttono
Submission time:2021-12-09 16:59:15 +0200
Language:C++ (C++11)
Status:READY
Result:0
Feedback
groupverdictscore
#10
#20
#30
Test results
testverdicttimegroup
#1--1details
#2--1details
#3ACCEPTED0.01 s1details
#4ACCEPTED0.01 s1details
#5ACCEPTED0.01 s1details
#6--2details
#7--2details
#8--2details
#9--2details
#10--2details
#11--3details
#12--3details
#13--3details
#14--3details
#15--3details

Code

#include <bits/stdc++.h>
using namespace std;
const int N = 501;
struct Vec
{
public:
int x;
int y;
Vec(int x, int y)
{
this->x = x;
this->y = y;
}
Vec()
{
this->x = 0;
this->y = 0;
}
};
int n;
string m[N];
string r = "";
Vec v[N][N];
int main()
{
cin>>n;
string s;
for(int i=0;i<n;i++)
{
cin>>s;
m[i] = s;
}
n--;
for(int x=n;x>=0;x--)
{
for(int y=n;y>=0;y--)
{
if(x==n && y==n) continue;
else if(x==n)
{
v[x][y] = Vec(x,y+1);
}
else if(y==n)
{
v[x][y] = Vec(x+1,y);
}
else
{
Vec rpos = Vec(x,y+1);
Vec dpos = Vec(x+1,y);
while(rpos.x<=n && rpos.y<=n && dpos.x<=n && dpos.y<=n && m[rpos.x][rpos.y] == m[dpos.x][dpos.y])
{
rpos = v[rpos.x][rpos.y];
dpos = v[dpos.x][dpos.y];
}
if(m[rpos.x][rpos.y] < m[dpos.x][dpos.y]) v[x][y] = Vec(x,y+1);
else v[x][y] = Vec(x+1,y);
}
}
}
Vec vec = Vec(0,0);
for(int i=0;i<n*2+1;i++)
{
cout<<m[vec.x][vec.y];
vec = v[vec.x][vec.y];
}
}

Test details

Test 1

Group: 1

Verdict:

input
5
AAAAA
AAAAA
AAAAA
AAAAA
...

correct output
AAAAAAAAB

user output
(empty)

Test 2

Group: 1

Verdict:

input
5
ABABA
BABAB
ABABA
BABAB
...

correct output
ABABABABA

user output
(empty)

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:

input
100
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

user output
(empty)

Test 7

Group: 2

Verdict:

input
100
ABABABABABABABABABABABABABABAB...

correct output
ABABABABABABABABABABABABABABAB...

user output
(empty)

Test 8

Group: 2

Verdict:

input
100
FWOVNYKNMMQCNHJGUYPNEDXGVVGONC...

correct output
FWDBDECKBHKIACOVUCJGDJOHAYIBHO...

user output
(empty)

Test 9

Group: 2

Verdict:

input
100
ETGCJABWKMAAEOQXWFFYMDJBMNKMQK...

correct output
EAARGLBRLHCDHHBPABHDAJBEEBHQBE...

user output
(empty)

Test 10

Group: 2

Verdict:

input
100
GNWMLJNHSBAADUFCSGIZMWHZTVDHNR...

correct output
GEGOFRDKBNLLEUOPOEQCEFMTKANLNC...

user output
(empty)

Test 11

Group: 3

Verdict:

input
500
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

user output
(empty)

Test 12

Group: 3

Verdict:

input
500
ABABABABABABABABABABABABABABAB...

correct output
ABABABABABABABABABABABABABABAB...

user output
(empty)

Test 13

Group: 3

Verdict:

input
500
HGADXTSFXYIEMDWMFIVQGHTACFUPYI...

correct output
HGADEJOGAKPJCRAHTABRSDLAVGBFAG...

user output
(empty)

Test 14

Group: 3

Verdict:

input
500
SBLNMAZESQVGWAPZYHQJMQTNGMEZWS...

correct output
SBLCAMDHILGIDRCIDUNMMAHFYCENOS...

user output
(empty)

Test 15

Group: 3

Verdict:

input
500
AOXYXRYFWPYWQDPWXQITLHQQUAYZAJ...

correct output
AOJLDOAPBGEKSGCNKBUMKAJCCWCOOD...

user output
(empty)