Submission #1540431
Source Code Expand
#include<stdio.h> #include<math.h> #include<algorithm> #include<queue> #include<deque> #include<string> #include<string.h> #include<vector> #include<set> #include<map> #include<stdlib.h> #include<cassert> using namespace std; const long long mod=1000000009; const long long inf=mod*mod; const long long d2=500000004; const double EPS=1e-10; const double PI=acos(-1.0); int ABS(int a){return max(a,-a);} long long ABS(long long a){return max(a,-a);} int R[410000]; char in[210000]; char tmp[410000]; int cnt[26]; int main(){ scanf("%s",in); int n=strlen(in); long long ret=(long long)n*(n+1)/2+1; for(int i=0;i<n;i++)cnt[in[i]-'a']++; for(int i=0;i<26;i++)ret-=(long long)cnt[i]*(cnt[i]+1)/2; /* int i = 0, j = 0; int sz=0; for(i=0;i<n;i++){ tmp[sz++]=in[i]; if(i<n-1)tmp[sz++]='*'; } i=0; string S=tmp; while (i < S.size()) { while (i-j >= 0 && i+j < S.size() && S[i-j] == S[i+j]) ++j; R[i] = j; int k = 1; while (i-k >= 0 && i+k < S.size() && k+R[i-k] < j) R[i+k] = R[i-k], ++k; i += k; j -= k; } printf("%lld\n",ret); for(int i=0;i<2*n-1;i++){ if(i%2==0)ret-=(R[i]+1)/2; else ret-=R[i]/2; }*/ printf("%lld\n",ret); }
Submission Info
Submission Time | |
---|---|
Task | B - Reverse and Compare |
User | tozangezan |
Language | C++14 (GCC 5.4.1) |
Score | 500 |
Code Size | 1203 Byte |
Status | AC |
Exec Time | 1 ms |
Memory | 384 KB |
Compile Error
./Main.cpp: In function ‘int main()’: ./Main.cpp:26:16: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] scanf("%s",in); ^
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 500 / 500 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt, sample_03.txt |
All | sample_01.txt, sample_02.txt, sample_03.txt, sample_01.txt, sample_02.txt, sample_03.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt, subtask_1_17.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 0 ms | 128 KB |
sample_02.txt | AC | 0 ms | 128 KB |
sample_03.txt | AC | 1 ms | 128 KB |
subtask_1_01.txt | AC | 0 ms | 128 KB |
subtask_1_02.txt | AC | 1 ms | 384 KB |
subtask_1_03.txt | AC | 0 ms | 128 KB |
subtask_1_04.txt | AC | 0 ms | 128 KB |
subtask_1_05.txt | AC | 0 ms | 128 KB |
subtask_1_06.txt | AC | 0 ms | 128 KB |
subtask_1_07.txt | AC | 1 ms | 128 KB |
subtask_1_08.txt | AC | 1 ms | 384 KB |
subtask_1_09.txt | AC | 1 ms | 384 KB |
subtask_1_10.txt | AC | 1 ms | 384 KB |
subtask_1_11.txt | AC | 1 ms | 384 KB |
subtask_1_12.txt | AC | 1 ms | 384 KB |
subtask_1_13.txt | AC | 1 ms | 384 KB |
subtask_1_14.txt | AC | 1 ms | 384 KB |
subtask_1_15.txt | AC | 1 ms | 384 KB |
subtask_1_16.txt | AC | 1 ms | 384 KB |
subtask_1_17.txt | AC | 1 ms | 384 KB |