Code Submission Evaluation System Login

Datatähti 2015 loppu

Start:2015-01-29 12:15:00
End:2015-01-29 17:15:00
 

Tasks | Scoreboard | Statistics


CSES - Datatähti 2015 loppu - Results
History
2015-06-26 17:33:24100
2015-01-29 16:59:3259
2015-01-29 16:12:5659
2015-01-29 15:03:460
2015-01-29 14:58:5459
2015-01-29 12:35:0859
Task:Ruudukko
Sender:eXeP
Submission time:2015-06-26 17:33:24
Language:C++
Status:READY
Score:100

Feedback

groupverdictscore
#1ACCEPTED17
#2ACCEPTED42
#3ACCEPTED41

Test results

testverdicttime (s)group
#1ACCEPTED0.06 / 3.001details
#2ACCEPTED0.05 / 3.001details
#3ACCEPTED0.06 / 3.001details
#4ACCEPTED0.07 / 3.001details
#5ACCEPTED0.06 / 3.001details
#6ACCEPTED0.06 / 3.002details
#7ACCEPTED0.06 / 3.002details
#8ACCEPTED0.06 / 3.002details
#9ACCEPTED0.06 / 3.002details
#10ACCEPTED0.06 / 3.002details
#11ACCEPTED0.07 / 3.003details
#12ACCEPTED0.07 / 3.003details
#13ACCEPTED0.06 / 3.003details
#14ACCEPTED0.06 / 3.003details
#15ACCEPTED0.06 / 3.003details

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:14:9: warning: unused variable 'dp' [-Wunused-variable]
     int dp[505][505] = {0};
         ^

Code

#include <bits/stdc++.h>

using namespace std;

int main()
{
    cin.sync_with_stdio(0);
    cin.tie(0);

    int n; cin >> n;
    string t[505];
    for(int i = 0; i < n; i++)
        cin >> t[i];
    int dp[505][505] = {0};
    bool p[505][505] = {0};
    p[0][0] = 1;
    string ans = " ";
    ans.resize(2*n-1);
    ans[0] = t[0][0];
    for(int i = 1; i < 2*n-1; i++)
        ans[i] = 'Z'+1;
    for(int i = 1; i < n; i++){
        int ii = i;
        for(int j = 0; j < n && ii >= 0;j++){
            if(j>0){
                if(p[ii][j-1] && t[ii][j-1]==ans[i-1]){
                    p[ii][j] = 1;
                    ans[i] = min(ans[i], t[ii][j]);
                }
            }
            if(ii>0){
                if(p[ii-1][j] && t[ii-1][j]==ans[i-1]){
                    p[ii][j] = 1;
                    ans[i] = min(ans[i], t[ii][j]);
                }
            }
            ii--;
        }

    }
    int i = n;
    for(int j = 1; j < n; j++){
        int jj = j;
        for(int ii = n-1; ii>=0 && jj<n; ii--){
            //cout << "nyt " << ii << ", " << jj << endl;
            if(ii>0){
                if(p[ii-1][jj] && t[ii-1][jj]==ans[i-1]){
                    p[ii][jj] = 1;
                    ans[i] = min(ans[i], t[ii][jj]);
                }
            }
            if(jj>0){
                if(p[ii][jj-1] && t[ii][jj-1]==ans[i-1]){
                    p[ii][jj] = 1;
                    ans[i] = min(ans[i], t[ii][jj]);
                }
            }
            jj++;
        }
        i++;
    }
    cout << ans << endl;
    return 0;
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
5
AAAAA
AAAAA
AAAAA
AAAAA
...
view   save

correct output
AAAAAAAAB

view   save

user output
AAAAAAAAB

view   save

Test 2

Group: 1

Verdict: ACCEPTED

input
5
ABABA
BABAB
ABABA
BABAB
...
view   save

correct output
ABABABABA

view   save

user output
ABABABABA

view   save

Test 3

Group: 1

Verdict: ACCEPTED

input
5
WRYIU
TWLKH
UJMJC
GRDJW
...
view   save

correct output
WRWJMDJWK

view   save

user output
WRWJMDJWK

view   save

Test 4

Group: 1

Verdict: ACCEPTED

input
5
RUEAE
ZYHHW
KDBPD
DXREW
...
view   save

correct output
RUEAEWDWX

view   save

user output
RUEAEWDWX

view   save

Test 5

Group: 1

Verdict: ACCEPTED

input
5
SRGYR
MYDOB
GNOVM
SZOZK
...
view   save

correct output
SMGNOOLTU

view   save

user output
SMGNOOLTU

view   save

Test 6

Group: 2

Verdict: ACCEPTED

input
100
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
view   save

correct output
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
view   save

user output
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
view   save

Test 7

Group: 2

Verdict: ACCEPTED

input
100
ABABABABABABABABABABABABABABAB...
view   save

correct output
ABABABABABABABABABABABABABABAB...
view   save

user output
ABABABABABABABABABABABABABABAB...
view   save

Test 8

Group: 2

Verdict: ACCEPTED

input
100
FWOVNYKNMMQCNHJGUYPNEDXGVVGONC...
view   save

correct output
FWDBDECKBHKIACOVUCJGDJOHAYIBHO...
view   save

user output
FWDBDECKBHKIACOVUCJGDJOHAYIBHO...
view   save

Test 9

Group: 2

Verdict: ACCEPTED

input
100
ETGCJABWKMAAEOQXWFFYMDJBMNKMQK...
view   save

correct output
EAARGLBRLHCDHHBPABHDAJBEEBHQBE...
view   save

user output
EAARGLBRLHCDHHBPABHDAJBEEBHQBE...
view   save

Test 10

Group: 2

Verdict: ACCEPTED

input
100
GNWMLJNHSBAADUFCSGIZMWHZTVDHNR...
view   save

correct output
GEGOFRDKBNLLEUOPOEQCEFMTKANLNC...
view   save

user output
GEGOFRDKBNLLEUOPOEQCEFMTKANLNC...
view   save

Test 11

Group: 3

Verdict: ACCEPTED

input
500
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
view   save

correct output
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
view   save

user output
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
view   save

Test 12

Group: 3

Verdict: ACCEPTED

input
500
ABABABABABABABABABABABABABABAB...
view   save

correct output
ABABABABABABABABABABABABABABAB...
view   save

user output
ABABABABABABABABABABABABABABAB...
view   save

Test 13

Group: 3

Verdict: ACCEPTED

input
500
HGADXTSFXYIEMDWMFIVQGHTACFUPYI...
view   save

correct output
HGADEJOGAKPJCRAHTABRSDLAVGBFAG...
view   save

user output
HGADEJOGAKPJCRAHTABRSDLAVGBFAG...
view   save

Test 14

Group: 3

Verdict: ACCEPTED

input
500
SBLNMAZESQVGWAPZYHQJMQTNGMEZWS...
view   save

correct output
SBLCAMDHILGIDRCIDUNMMAHFYCENOS...
view   save

user output
SBLCAMDHILGIDRCIDUNMMAHFYCENOS...
view   save

Test 15

Group: 3

Verdict: ACCEPTED

input
500
AOXYXRYFWPYWQDPWXQITLHQQUAYZAJ...
view   save

correct output
AOJLDOAPBGEKSGCNKBUMKAJCCWCOOD...
view   save

user output
AOJLDOAPBGEKSGCNKBUMKAJCCWCOOD...
view   save