CSES - Harjoituskisa 7.1.2018 - Results
Submission details
Task:Ruudukko
Sender:ArktinenKarpalo
Submission time:2018-01-10 17:25:30 +0200
Language:C++
Status:READY
Result:100
Feedback
groupverdictscore
#1ACCEPTED17
#2ACCEPTED42
#3ACCEPTED41
Test results
testverdicttimegroup
#1ACCEPTED0.15 s1details
#2ACCEPTED0.11 s1details
#3ACCEPTED0.13 s1details
#4ACCEPTED0.12 s1details
#5ACCEPTED0.16 s1details
#6ACCEPTED0.14 s2details
#7ACCEPTED0.14 s2details
#8ACCEPTED0.12 s2details
#9ACCEPTED0.12 s2details
#10ACCEPTED0.11 s2details
#11ACCEPTED0.14 s3details
#12ACCEPTED0.16 s3details
#13ACCEPTED0.16 s3details
#14ACCEPTED0.23 s3details
#15ACCEPTED0.16 s3details

Code

#include <bits/stdc++.h>
#define ll long long
#define ull unsigned long long

using namespace std;

char mini[6666];
int n, qaq[2525][2525];
string s[101010];
queue<pair<char, pair<int,int>>> q[101010];

int main() {
	cin.tie(0);
	cout.tie(0);
	ios_base::sync_with_stdio(0);
	cin >> n;
	for(int i=0; i<n; i++)
		cin >> s[i];
	for(int i=0; i<6666; i++)
		mini[i] = 'Z';
	q[0].push(make_pair(s[0][0], make_pair(0,0)));
	mini[0] = s[0][0];
	for(int i=0; i<6666; i++) {
		while(!q[i].empty()) {
			char taa = q[i].front().first;
			int x = q[i].front().second.second;
			int y = q[i].front().second.first;
			q[i].pop();
			if(taa>mini[i]||qaq[y][x])
				continue;
			qaq[y][x] = 1;
			if(x+1<n) {
				q[i+1].push(make_pair(s[y][x+1], make_pair(y, x+1)));
				mini[i+1] = min(mini[i+1], s[y][x+1]);
			}
			if(y+1<n) {
				q[i+1].push(make_pair(s[y+1][x], make_pair(y+1, x)));
				mini[i+1] = min(mini[i+1], s[y+1][x]);
			}
		}
	}
	for(int i=0; i<n*2-1; i++)
		cout << mini[i];
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
5
ILRBG
SBRHV
PAGKM
YKKNG
...

correct output
ILBAGKMGQ

user output
ILBAGKMGQ

Test 2

Group: 1

Verdict: ACCEPTED

input
5
KQQBB
IWDQN
TENSD
PGXMV
...

correct output
KITEGMIWH

user output
KITEGMIWH

Test 3

Group: 1

Verdict: ACCEPTED

input
5
DSWIO
RWFDY
ISZRK
GBVYS
...

correct output
DRIGBJDLU

user output
DRIGBJDLU

Test 4

Group: 1

Verdict: ACCEPTED

input
5
VGQFP
FTISL
QCLYU
EYNZZ
...

correct output
VFQCLNRZP

user output
VFQCLNRZP

Test 5

Group: 1

Verdict: ACCEPTED

input
5
WCSNV
UWNDB
WDHZA
XGRBQ
...

correct output
WCSNDBAQW

user output
WCSNDBAQW

Test 6

Group: 2

Verdict: ACCEPTED

input
100
WFNOQZOAMZPHFRDYGXQNUPWVMFDNJF...

correct output
WFAHHJDEVFSGGOGMIFDEEDKPSHBBRX...

user output
WFAHHJDEVFSGGOGMIFDEEDKPSHBBRX...

Test 7

Group: 2

Verdict: ACCEPTED

input
100
UEOPTOSBCABXIPUOQRKWKMZRGRZUSS...

correct output
UEGHLIWDHDVKTECPACBJABFMBOASOF...

user output
UEGHLIWDHDVKTECPACBJABFMBOASOF...

Test 8

Group: 2

Verdict: ACCEPTED

input
100
XCKBHDFAPMFZNJANJUENHGXYBBHFJR...

correct output
XCCENJBCBUFBIOJOJDREIBGRUKVRQS...

user output
XCCENJBCBUFBIOJOJDREIBGRUKVRQS...

Test 9

Group: 2

Verdict: ACCEPTED

input
100
YEBXYYLVUDYIHNUMRCUTAYVTNLMEZL...

correct output
YDJNBALIRDOVFBKDDJDFNSSMIDMFRM...

user output
YDJNBALIRDOVFBKDDJDFNSSMIDMFRM...

Test 10

Group: 2

Verdict: ACCEPTED

input
100
MVONBCDHJUKRKDGPNYSYGRXBLZOMLD...

correct output
MMSJFIKBSFCUMBBLXJCOUIRAPOKEJS...

user output
MMSJFIKBSFCUMBBLXJCOUIRAPOKEJS...

Test 11

Group: 3

Verdict: ACCEPTED

input
2500
LKEFOYQTRZJHADSYBRGQCUDOPMGYOF...

correct output
LDHPNOFPFOCGKPNCEQKANCJCBLGDKC...

user output
LDHPNOFPFOCGKPNCEQKANCJCBLGDKC...

Test 12

Group: 3

Verdict: ACCEPTED

input
2500
UGPBLFMZGVIANZLHRTPJIHMUZWOXKA...

correct output
UGLSEBMGHSONFJBGOJJAGBJCLFAHAP...

user output
UGLSEBMGHSONFJBGOJJAGBJCLFAHAP...

Test 13

Group: 3

Verdict: ACCEPTED

input
2500
YRUOZBRTLLMMAHNIHQLZHBYCDHTHMS...

correct output
YELLJAAKETHCOWAJNDGJBOFNTCCEDA...

user output
YELLJAAKETHCOWAJNDGJBOFNTCCEDA...

Test 14

Group: 3

Verdict: ACCEPTED

input
2500
RXZEOTVYZBQUOJJFLCJCYCZDONBLUR...

correct output
RTDHUEBGLTKRHKIQLGKILATNHWPIBO...

user output
RTDHUEBGLTKRHKIQLGKILATNHWPIBO...

Test 15

Group: 3

Verdict: ACCEPTED

input
2500
IOTRAMNHKWWBVPQPPWTTBHOYDFXPOX...

correct output
IOTQTIDOBFMJBDNOFEFGGIBGAGQBIC...

user output
IOTQTIDOBFMJBDNOFEFGGIBGAGQBIC...