Submission #577341
Source Code Expand
#include<cstdio>
#include<algorithm>
#define N 100100
using namespace std;
char s[N];
int l[N],r[N],ln[N],rn[N],lto[N],rto[N];
int main(){
int n,i,lt=0,rt=0,ans=0;
scanf("%d",&n);
scanf("%s",s+1);
for(i=1;i<=n;i++){
if(s[i]=='>') l[i]=l[i-1]+1,ln[lt++]=i-1;
else l[i]=l[i-1];
}
ln[lt]=n;
for(int i=n;i>=1;i--){
if(s[i]=='<') r[i]=r[i+1]+1,rn[rt++]=n-i;
else r[i]=r[i+1];
}
rn[rt]=n;
lto[n+1]=n+1;
for(int i=n;i>=1;i--){
if(i==n||s[i+1]=='<') lto[i]=i+1;
else lto[i]=lto[i+1];
}
rto[0]=0;
for(int i=1;i<=n;i++){
if(i==1||s[i-1]=='>') rto[i]=i-1;
else rto[i]=rto[i-1];
}
for(int i=1;i<=n;i++){
if(s[i]=='>'){
if(l[i]>r[lto[i]]) ans=max(ans,n-ln[l[i]-r[lto[i]]-1]);
else ans=max(ans,n-rn[r[lto[i]]-l[i]]);
}
else{
if(r[i]>l[rto[i]]) ans=max(ans,n-rn[r[i]-l[rto[i]]-1]);
else ans=max(ans,n-ln[l[rto[i]]-r[i]]);
}
}
printf("%d\n",ans);
return 0;
}
Submission Info
Submission Time
2015-11-22 12:13:43+0900
Task
D - Line Gimmick
User
NCTU_Thor
Language
C++11 (GCC 4.8.1)
Score
100
Code Size
1108 Byte
Status
AC
Exec Time
30 ms
Memory
2848 KiB
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:9:19: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d",&n);
^
./Main.cpp:10:20: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%s",s+1);
^
Judge Result
Set Name
All
Score / Max Score
100 / 100
Status
Set Name
Test Cases
All
00_sample_00, 00_sample_01, 00_sample_02, 00_sample_03, 10_simple_small_000, 10_simple_small_001, 10_simple_small_002, 10_simple_small_003, 10_simple_small_004, 11_simple_med_000, 11_simple_med_001, 11_simple_med_002, 11_simple_med_003, 11_simple_med_004, 12_simple_large_000, 12_simple_large_001, 12_simple_large_002, 12_simple_large_003, 12_simple_large_004, 21_answer_med_000, 21_answer_med_001, 21_answer_med_002, 21_answer_med_003, 21_answer_med_004, 22_answer_large_000, 22_answer_large_001, 22_answer_large_002, 22_answer_large_003, 22_answer_large_004
Case Name
Status
Exec Time
Memory
00_sample_00
AC
22 ms
796 KiB
00_sample_01
AC
21 ms
680 KiB
00_sample_02
AC
21 ms
704 KiB
00_sample_03
AC
23 ms
680 KiB
10_simple_small_000
AC
21 ms
792 KiB
10_simple_small_001
AC
21 ms
684 KiB
10_simple_small_002
AC
23 ms
800 KiB
10_simple_small_003
AC
24 ms
796 KiB
10_simple_small_004
AC
23 ms
792 KiB
11_simple_med_000
AC
24 ms
792 KiB
11_simple_med_001
AC
22 ms
796 KiB
11_simple_med_002
AC
24 ms
792 KiB
11_simple_med_003
AC
23 ms
668 KiB
11_simple_med_004
AC
21 ms
796 KiB
12_simple_large_000
AC
27 ms
1828 KiB
12_simple_large_001
AC
27 ms
1820 KiB
12_simple_large_002
AC
30 ms
2848 KiB
12_simple_large_003
AC
29 ms
2588 KiB
12_simple_large_004
AC
30 ms
2720 KiB
21_answer_med_000
AC
29 ms
2468 KiB
21_answer_med_001
AC
29 ms
2728 KiB
21_answer_med_002
AC
29 ms
2836 KiB
21_answer_med_003
AC
26 ms
1948 KiB
21_answer_med_004
AC
28 ms
2592 KiB
22_answer_large_000
AC
27 ms
2072 KiB
22_answer_large_001
AC
30 ms
2548 KiB
22_answer_large_002
AC
28 ms
2320 KiB
22_answer_large_003
AC
26 ms
2324 KiB
22_answer_large_004
AC
30 ms
2712 KiB