Submission #27479

# Submission time Handle Problem Language Result Execution time Memory
27479 2017-07-13T06:46:27 Z TAMREF Three Friends (BOI14_friends) C++11
100 / 100
6 ms 3972 KB
#include <bits/stdc++.h>
using namespace std;
const int mx=2e6+10;
int n,h;
char S[mx];
void nu(){exit(0*puts("NOT UNIQUE"));}
void np(){exit(0*puts("NOT POSSIBLE"));}
void input(){
    scanf("%d\n",&n);
    if(n%2==0) np();
    fgets(S,mx-4,stdin);
    S[n]=0; h=(n-1)>>1;
}
void solve(){
    int i,cnt=0;
    for(i=0;i<h&&S[i]==S[i+h];i++);
    for(;i<h&&S[i]==S[i+h+1];i++);
    if(i==h) cnt|=1;
    for(i=0;i<h&&S[i]==S[i+h+1];i++);
    for(;i<h&&S[i+1]==S[i+h+1];i++);
    if(i==h) cnt|=2;
    S[h]=0;
    switch(cnt){
    case 0: np();
    case 1: exit(0*puts(S));
    case 3: if(strcmp(S,S+h+1)) nu();
    case 2: exit(0*puts(S+h+1));
    }
}
int main(){
    input();
    solve();
}

Compilation message

friends.cpp: In function 'void input()':
friends.cpp:9:21: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d\n",&n);
                     ^
friends.cpp:11:24: warning: ignoring return value of 'char* fgets(char*, int, FILE*)', declared with attribute warn_unused_result [-Wunused-result]
     fgets(S,mx-4,stdin);
                        ^
# Verdict Execution time Memory Grader output
1 Correct 0 ms 3972 KB Output is correct
2 Correct 0 ms 3972 KB Output is correct
3 Correct 0 ms 3972 KB Output is correct
4 Correct 0 ms 3972 KB Output is correct
5 Correct 0 ms 3972 KB Output is correct
6 Correct 0 ms 3972 KB Output is correct
7 Correct 0 ms 3972 KB Output is correct
8 Correct 0 ms 3972 KB Output is correct
9 Correct 0 ms 3972 KB Output is correct
10 Correct 0 ms 3972 KB Output is correct
11 Correct 0 ms 3972 KB Output is correct
12 Correct 0 ms 3972 KB Output is correct
13 Correct 0 ms 3972 KB Output is correct
14 Correct 0 ms 3972 KB Output is correct
15 Correct 0 ms 3972 KB Output is correct
16 Correct 0 ms 3972 KB Output is correct
17 Correct 0 ms 3972 KB Output is correct
18 Correct 0 ms 3972 KB Output is correct
19 Correct 0 ms 3972 KB Output is correct
20 Correct 0 ms 3972 KB Output is correct
21 Correct 0 ms 3972 KB Output is correct
22 Correct 0 ms 3972 KB Output is correct
23 Correct 0 ms 3972 KB Output is correct
24 Correct 0 ms 3972 KB Output is correct
25 Correct 0 ms 3972 KB Output is correct
26 Correct 0 ms 3972 KB Output is correct
27 Correct 0 ms 3972 KB Output is correct
28 Correct 0 ms 3972 KB Output is correct
29 Correct 0 ms 3972 KB Output is correct
30 Correct 0 ms 3972 KB Output is correct
31 Correct 0 ms 3972 KB Output is correct
32 Correct 0 ms 3972 KB Output is correct
33 Correct 0 ms 3972 KB Output is correct
34 Correct 0 ms 3972 KB Output is correct
35 Correct 0 ms 3972 KB Output is correct
36 Correct 0 ms 3972 KB Output is correct
37 Correct 0 ms 3972 KB Output is correct
38 Correct 0 ms 3972 KB Output is correct
39 Correct 0 ms 3972 KB Output is correct
40 Correct 0 ms 3972 KB Output is correct
41 Correct 0 ms 3972 KB Output is correct
42 Correct 0 ms 3972 KB Output is correct
43 Correct 0 ms 3972 KB Output is correct
44 Correct 0 ms 3972 KB Output is correct
45 Correct 0 ms 3972 KB Output is correct
46 Correct 0 ms 3972 KB Output is correct
47 Correct 0 ms 3972 KB Output is correct
48 Correct 0 ms 3972 KB Output is correct
49 Correct 0 ms 3972 KB Output is correct
50 Correct 0 ms 3972 KB Output is correct
51 Correct 0 ms 3972 KB Output is correct
52 Correct 0 ms 3972 KB Output is correct
53 Correct 0 ms 3972 KB Output is correct
54 Correct 0 ms 3972 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 6 ms 3972 KB Output is correct
2 Correct 6 ms 3972 KB Output is correct
3 Correct 3 ms 3972 KB Output is correct
4 Correct 0 ms 3972 KB Output is correct
5 Correct 0 ms 3972 KB Output is correct
6 Correct 0 ms 3972 KB Output is correct
7 Correct 3 ms 3972 KB Output is correct
8 Correct 0 ms 3972 KB Output is correct
9 Correct 0 ms 3972 KB Output is correct
10 Correct 0 ms 3972 KB Output is correct
11 Correct 0 ms 3972 KB Output is correct
12 Correct 0 ms 3972 KB Output is correct
13 Correct 0 ms 3972 KB Output is correct
14 Correct 0 ms 3972 KB Output is correct
15 Correct 0 ms 3972 KB Output is correct
16 Correct 0 ms 3972 KB Output is correct
17 Correct 0 ms 3972 KB Output is correct
18 Correct 0 ms 3972 KB Output is correct
19 Correct 0 ms 3972 KB Output is correct
20 Correct 0 ms 3972 KB Output is correct
21 Correct 0 ms 3972 KB Output is correct
22 Correct 0 ms 3972 KB Output is correct
23 Correct 0 ms 3972 KB Output is correct
24 Correct 0 ms 3972 KB Output is correct
25 Correct 0 ms 3972 KB Output is correct
26 Correct 0 ms 3972 KB Output is correct
27 Correct 0 ms 3972 KB Output is correct
28 Correct 0 ms 3972 KB Output is correct
29 Correct 0 ms 3972 KB Output is correct
30 Correct 0 ms 3972 KB Output is correct
31 Correct 0 ms 3972 KB Output is correct
32 Correct 0 ms 3972 KB Output is correct
33 Correct 0 ms 3972 KB Output is correct
34 Correct 0 ms 3972 KB Output is correct
35 Correct 0 ms 3972 KB Output is correct
36 Correct 0 ms 3972 KB Output is correct
37 Correct 0 ms 3972 KB Output is correct
38 Correct 0 ms 3972 KB Output is correct
39 Correct 0 ms 3972 KB Output is correct
40 Correct 0 ms 3972 KB Output is correct
41 Correct 0 ms 3972 KB Output is correct
42 Correct 0 ms 3972 KB Output is correct
43 Correct 0 ms 3972 KB Output is correct
44 Correct 0 ms 3972 KB Output is correct
45 Correct 0 ms 3972 KB Output is correct
46 Correct 0 ms 3972 KB Output is correct
47 Correct 0 ms 3972 KB Output is correct
48 Correct 0 ms 3972 KB Output is correct
49 Correct 0 ms 3972 KB Output is correct
50 Correct 0 ms 3972 KB Output is correct
51 Correct 0 ms 3972 KB Output is correct
52 Correct 0 ms 3972 KB Output is correct
53 Correct 0 ms 3972 KB Output is correct
54 Correct 0 ms 3972 KB Output is correct