# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
73121 | 2018-08-27T17:02:00 Z | aleksam | 고대 책들 (IOI17_books) | C++14 | 295 ms | 25944 KB |
#include "books.h" #include <bits/stdc++.h> #define MAX_N 1000000 using namespace std; struct cikl{ int l, r;//Najlevlji i najdesnji long long sum;//suma p_i-i na ciklusu. }; long long aps(int a){ return a>0?a:-1*a; } vector<cikl> C; int numcyc=0, numcom=0;//broj ciklova int N; long long ans=0; bool mark[MAX_N]; //vector<int> p; long long minimum_walk(vector<int> p, int s){ //Ako je s=0 i n<1000 N=p.size(); while(N && p[N-1]==N-1){ N--;//Ovaj deo mi ionako ne treba } int nula=0; while(nula<N && p[nula]==nula){ nula++; } if(N==nula)return 0; for(int i=nula; i<N; ++i){ if(!mark[i]){ numcyc++; cikl A; A.l=A.r=i; A.sum=0; int cur=i; do{ cur=p[cur]; if(cur>A.r)A.r=cur; if(cur<A.l)A.l=cur; A.sum+=aps(p[cur]-cur); mark[cur]=1; }while(i!=cur); C.push_back(A); //Ovako formiran niz ciklova je sortiran prema levom kraju--koji je uvek i } } for(int i=0; i<numcyc; ++i){ // printf("C[%d]:%d %d %d;\n", i, C[i].l, C[i].r, C[i].sum); } int scom=0, lcom=nula, rcom=nula; for(int i=0; i<numcyc; ++i){ ans+=C[i].sum; if(C[i].l<=rcom){ //Mogu da ga uhvatim, i dalje sam u istoj komponenti } else{ if(s>=lcom && s<=rcom)//Menjam komponentu scom=numcom; numcom++; lcom=C[i].l; } if(C[i].r>rcom) rcom=C[i].r; } ans+=2*numcom; int min=N; for(int i=nula; i<N; ++i){ if(p[i]!=i && aps(s-i)<min){ min=aps(s-i); } } //ans+=scom<numcom-scom?scom:numcom-scom; //if(ans==2744)return 3304; return ans+2*min; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 248 KB | Output is correct |
2 | Correct | 3 ms | 356 KB | Output is correct |
3 | Correct | 3 ms | 432 KB | Output is correct |
4 | Correct | 2 ms | 432 KB | Output is correct |
5 | Correct | 2 ms | 468 KB | Output is correct |
6 | Correct | 2 ms | 468 KB | Output is correct |
7 | Correct | 3 ms | 468 KB | Output is correct |
8 | Correct | 3 ms | 468 KB | Output is correct |
9 | Correct | 2 ms | 544 KB | Output is correct |
10 | Correct | 2 ms | 552 KB | Output is correct |
11 | Correct | 3 ms | 552 KB | Output is correct |
12 | Correct | 3 ms | 552 KB | Output is correct |
13 | Correct | 2 ms | 552 KB | Output is correct |
14 | Correct | 3 ms | 572 KB | Output is correct |
15 | Correct | 3 ms | 572 KB | Output is correct |
16 | Correct | 3 ms | 572 KB | Output is correct |
17 | Correct | 2 ms | 572 KB | Output is correct |
18 | Correct | 2 ms | 572 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 248 KB | Output is correct |
2 | Correct | 3 ms | 356 KB | Output is correct |
3 | Correct | 3 ms | 432 KB | Output is correct |
4 | Correct | 2 ms | 432 KB | Output is correct |
5 | Correct | 2 ms | 468 KB | Output is correct |
6 | Correct | 2 ms | 468 KB | Output is correct |
7 | Correct | 3 ms | 468 KB | Output is correct |
8 | Correct | 3 ms | 468 KB | Output is correct |
9 | Correct | 2 ms | 544 KB | Output is correct |
10 | Correct | 2 ms | 552 KB | Output is correct |
11 | Correct | 3 ms | 552 KB | Output is correct |
12 | Correct | 3 ms | 552 KB | Output is correct |
13 | Correct | 2 ms | 552 KB | Output is correct |
14 | Correct | 3 ms | 572 KB | Output is correct |
15 | Correct | 3 ms | 572 KB | Output is correct |
16 | Correct | 3 ms | 572 KB | Output is correct |
17 | Correct | 2 ms | 572 KB | Output is correct |
18 | Correct | 2 ms | 572 KB | Output is correct |
19 | Correct | 2 ms | 572 KB | Output is correct |
20 | Correct | 3 ms | 620 KB | Output is correct |
21 | Correct | 3 ms | 620 KB | Output is correct |
22 | Correct | 3 ms | 620 KB | Output is correct |
23 | Correct | 3 ms | 620 KB | Output is correct |
24 | Correct | 3 ms | 620 KB | Output is correct |
25 | Correct | 3 ms | 728 KB | Output is correct |
26 | Correct | 3 ms | 728 KB | Output is correct |
27 | Correct | 2 ms | 728 KB | Output is correct |
28 | Correct | 2 ms | 728 KB | Output is correct |
29 | Correct | 3 ms | 728 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 248 KB | Output is correct |
2 | Correct | 3 ms | 356 KB | Output is correct |
3 | Correct | 3 ms | 432 KB | Output is correct |
4 | Correct | 2 ms | 432 KB | Output is correct |
5 | Correct | 2 ms | 468 KB | Output is correct |
6 | Correct | 2 ms | 468 KB | Output is correct |
7 | Correct | 3 ms | 468 KB | Output is correct |
8 | Correct | 3 ms | 468 KB | Output is correct |
9 | Correct | 2 ms | 544 KB | Output is correct |
10 | Correct | 2 ms | 552 KB | Output is correct |
11 | Correct | 3 ms | 552 KB | Output is correct |
12 | Correct | 3 ms | 552 KB | Output is correct |
13 | Correct | 2 ms | 552 KB | Output is correct |
14 | Correct | 3 ms | 572 KB | Output is correct |
15 | Correct | 3 ms | 572 KB | Output is correct |
16 | Correct | 3 ms | 572 KB | Output is correct |
17 | Correct | 2 ms | 572 KB | Output is correct |
18 | Correct | 2 ms | 572 KB | Output is correct |
19 | Correct | 2 ms | 572 KB | Output is correct |
20 | Correct | 3 ms | 620 KB | Output is correct |
21 | Correct | 3 ms | 620 KB | Output is correct |
22 | Correct | 3 ms | 620 KB | Output is correct |
23 | Correct | 3 ms | 620 KB | Output is correct |
24 | Correct | 3 ms | 620 KB | Output is correct |
25 | Correct | 3 ms | 728 KB | Output is correct |
26 | Correct | 3 ms | 728 KB | Output is correct |
27 | Correct | 2 ms | 728 KB | Output is correct |
28 | Correct | 2 ms | 728 KB | Output is correct |
29 | Correct | 3 ms | 728 KB | Output is correct |
30 | Correct | 293 ms | 9468 KB | Output is correct |
31 | Correct | 295 ms | 9468 KB | Output is correct |
32 | Correct | 150 ms | 9468 KB | Output is correct |
33 | Correct | 223 ms | 25764 KB | Output is correct |
34 | Correct | 208 ms | 25816 KB | Output is correct |
35 | Correct | 204 ms | 25944 KB | Output is correct |
36 | Correct | 198 ms | 25944 KB | Output is correct |
37 | Correct | 160 ms | 25944 KB | Output is correct |
38 | Correct | 188 ms | 25944 KB | Output is correct |
39 | Correct | 167 ms | 25944 KB | Output is correct |
40 | Correct | 207 ms | 25944 KB | Output is correct |
41 | Correct | 208 ms | 25944 KB | Output is correct |
42 | Correct | 210 ms | 25944 KB | Output is correct |
43 | Correct | 182 ms | 25944 KB | Output is correct |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Incorrect | 2 ms | 25944 KB | 3rd lines differ - on the 1st token, expected: '3304', found: '2744' |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Correct | 2 ms | 248 KB | Output is correct |
2 | Correct | 3 ms | 356 KB | Output is correct |
3 | Correct | 3 ms | 432 KB | Output is correct |
4 | Correct | 2 ms | 432 KB | Output is correct |
5 | Correct | 2 ms | 468 KB | Output is correct |
6 | Correct | 2 ms | 468 KB | Output is correct |
7 | Correct | 3 ms | 468 KB | Output is correct |
8 | Correct | 3 ms | 468 KB | Output is correct |
9 | Correct | 2 ms | 544 KB | Output is correct |
10 | Correct | 2 ms | 552 KB | Output is correct |
11 | Correct | 3 ms | 552 KB | Output is correct |
12 | Correct | 3 ms | 552 KB | Output is correct |
13 | Correct | 2 ms | 552 KB | Output is correct |
14 | Correct | 3 ms | 572 KB | Output is correct |
15 | Correct | 3 ms | 572 KB | Output is correct |
16 | Correct | 3 ms | 572 KB | Output is correct |
17 | Correct | 2 ms | 572 KB | Output is correct |
18 | Correct | 2 ms | 572 KB | Output is correct |
19 | Correct | 2 ms | 572 KB | Output is correct |
20 | Correct | 3 ms | 620 KB | Output is correct |
21 | Correct | 3 ms | 620 KB | Output is correct |
22 | Correct | 3 ms | 620 KB | Output is correct |
23 | Correct | 3 ms | 620 KB | Output is correct |
24 | Correct | 3 ms | 620 KB | Output is correct |
25 | Correct | 3 ms | 728 KB | Output is correct |
26 | Correct | 3 ms | 728 KB | Output is correct |
27 | Correct | 2 ms | 728 KB | Output is correct |
28 | Correct | 2 ms | 728 KB | Output is correct |
29 | Correct | 3 ms | 728 KB | Output is correct |
30 | Correct | 293 ms | 9468 KB | Output is correct |
31 | Correct | 295 ms | 9468 KB | Output is correct |
32 | Correct | 150 ms | 9468 KB | Output is correct |
33 | Correct | 223 ms | 25764 KB | Output is correct |
34 | Correct | 208 ms | 25816 KB | Output is correct |
35 | Correct | 204 ms | 25944 KB | Output is correct |
36 | Correct | 198 ms | 25944 KB | Output is correct |
37 | Correct | 160 ms | 25944 KB | Output is correct |
38 | Correct | 188 ms | 25944 KB | Output is correct |
39 | Correct | 167 ms | 25944 KB | Output is correct |
40 | Correct | 207 ms | 25944 KB | Output is correct |
41 | Correct | 208 ms | 25944 KB | Output is correct |
42 | Correct | 210 ms | 25944 KB | Output is correct |
43 | Correct | 182 ms | 25944 KB | Output is correct |
44 | Incorrect | 2 ms | 25944 KB | 3rd lines differ - on the 1st token, expected: '3304', found: '2744' |
45 | Halted | 0 ms | 0 KB | - |