| Task: | Period |
| Sender: | lnan95 |
| Submission time: | 2020-09-26 15:03:01 +0300 |
| Language: | C++ (C++17) |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.01 s | details |
| #2 | ACCEPTED | 0.01 s | details |
| #3 | ACCEPTED | 0.01 s | details |
| #4 | ACCEPTED | 0.01 s | details |
| #5 | ACCEPTED | 0.01 s | details |
| #6 | ACCEPTED | 0.01 s | details |
| #7 | ACCEPTED | 0.01 s | details |
| #8 | ACCEPTED | 0.01 s | details |
| #9 | ACCEPTED | 0.01 s | details |
| #10 | ACCEPTED | 0.01 s | details |
| #11 | ACCEPTED | 0.01 s | details |
| #12 | ACCEPTED | 0.01 s | details |
| #13 | ACCEPTED | 0.01 s | details |
| #14 | ACCEPTED | 0.01 s | details |
| #15 | ACCEPTED | 0.01 s | details |
| #16 | ACCEPTED | 0.01 s | details |
| #17 | ACCEPTED | 0.01 s | details |
| #18 | ACCEPTED | 0.01 s | details |
| #19 | ACCEPTED | 0.01 s | details |
| #20 | ACCEPTED | 0.01 s | details |
| #21 | ACCEPTED | 0.01 s | details |
Code
#include<bits/stdc++.h>
using namespace std;
const int N = 1e5+1;
int n,z[N];
string s;
int main()
{
cin >> s;
n = s.size();
z[0]=n;
int j=1,k;
for (int i=1;i<n;)
{
if (j<i) j=i;
while (j<n && s[j]==s[j-i]) j++;
z[i]=j-i;
k=i+1;
// i, .. k, ... j
// assign to following chars
while (k+z[k-i]<j) {
z[k]=z[k-i];
k++;
}
i = k;
}
for (int i=1;i<n;i++) {
int j = i;
while(n-z[j] == j) {
j += z[j];
if (j > n-1) {
cout << s.substr(0, i);
return 0;
}
}
}
cout << s;
return 0;
} Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| acbacbac |
| correct output |
|---|
| acb |
| user output |
|---|
| acb |
Test 2
Verdict: ACCEPTED
| input |
|---|
| a |
| correct output |
|---|
| a |
| user output |
|---|
| a |
Test 3
Verdict: ACCEPTED
| input |
|---|
| z |
| correct output |
|---|
| z |
| user output |
|---|
| z |
Test 4
Verdict: ACCEPTED
| input |
|---|
| aa |
| correct output |
|---|
| a |
| user output |
|---|
| a |
Test 5
Verdict: ACCEPTED
| input |
|---|
| az |
| correct output |
|---|
| az |
| user output |
|---|
| az |
Test 6
Verdict: ACCEPTED
| input |
|---|
| aba |
| correct output |
|---|
| ab |
| user output |
|---|
| ab |
Test 7
Verdict: ACCEPTED
| input |
|---|
| abab |
| correct output |
|---|
| ab |
| user output |
|---|
| ab |
Test 8
Verdict: ACCEPTED
| input |
|---|
| aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... |
| correct output |
|---|
| a |
| user output |
|---|
| a |
Test 9
Verdict: ACCEPTED
| input |
|---|
| aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... |
| correct output |
|---|
| aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... |
| user output |
|---|
| aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa... Truncated |
Test 10
Verdict: ACCEPTED
| input |
|---|
| ababababababababababababababab... |
| correct output |
|---|
| ab |
| user output |
|---|
| ab |
Test 11
Verdict: ACCEPTED
| input |
|---|
| tgainzxtgainzxtgainzxtgainzxtg... |
| correct output |
|---|
| tgainzx |
| user output |
|---|
| tgainzx |
Test 12
Verdict: ACCEPTED
| input |
|---|
| qmuflfcbqweunsjsodgspftyvikiwk... |
| correct output |
|---|
| qmuflfcbqweunsjsodgspftyvikiwk... |
| user output |
|---|
| qmuflfcbqweunsjsodgspftyvikiwk... |
Test 13
Verdict: ACCEPTED
| input |
|---|
| ohbsbconrkytyhtmibzrwwqdsqojoe... |
| correct output |
|---|
| ohbsbconrkytyhtmibzrwwqdsqojoe... |
| user output |
|---|
| ohbsbconrkytyhtmibzrwwqdsqojoe... Truncated |
Test 14
Verdict: ACCEPTED
| input |
|---|
| hxkuxccasglgpvnfnhdoqelpvxughq... |
| correct output |
|---|
| hxkuxccasglgpvnfnhdoqelpvxughq... |
| user output |
|---|
| hxkuxccasglgpvnfnhdoqelpvxughq... Truncated |
Test 15
Verdict: ACCEPTED
| input |
|---|
| mhwvddomkxrzuziwbfoaqxzjmfevla... |
| correct output |
|---|
| mhwvddomkxrzuziwbfoaqxzjmfevla... |
| user output |
|---|
| mhwvddomkxrzuziwbfoaqxzjmfevla... Truncated |
Test 16
Verdict: ACCEPTED
| input |
|---|
| gnruvsfdjemxstfuysiqkrtwbgtono... |
| correct output |
|---|
| gnruvsfdjemxstfuysiqkrtwbgtono... |
| user output |
|---|
| gnruvsfdjemxstfuysiqkrtwbgtono... Truncated |
Test 17
Verdict: ACCEPTED
| input |
|---|
| xqiwjzftugyurtwsziffnqaeozescu... |
| correct output |
|---|
| xqiwjzftugyurtwsziffnqaeozescu... |
| user output |
|---|
| xqiwjzftugyurtwsziffnqaeozescu... Truncated |
Test 18
Verdict: ACCEPTED
| input |
|---|
| vgygtamnegxyxvjbuceoliipbkggyw... |
| correct output |
|---|
| vgygtamnegxyxvjbuceoliipbkggyw... |
| user output |
|---|
| vgygtamnegxyxvjbuceoliipbkggyw... Truncated |
Test 19
Verdict: ACCEPTED
| input |
|---|
| qvjhmaafzlugwwaygdojysrjoydnnj... |
| correct output |
|---|
| qvjhmaafzlugwwaygdojysrjoydnnj... |
| user output |
|---|
| qvjhmaafzlugwwaygdojysrjoydnnj... Truncated |
Test 20
Verdict: ACCEPTED
| input |
|---|
| tusmizkjfdazyohorfcumwmalodvnc... |
| correct output |
|---|
| tusmizkjfdazyohorfcumwmalodvnc... |
| user output |
|---|
| tusmizkjfdazyohorfcumwmalodvnc... Truncated |
Test 21
Verdict: ACCEPTED
| input |
|---|
| zqikxaoeizncpvlpcvomrdkstackqq... |
| correct output |
|---|
| zqikxaoeizncpvlpcvomrdkstackqq... |
| user output |
|---|
| zqikxaoeizncpvlpcvomrdkstackqq... Truncated |
