Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <bits/stdc++.h>
- using namespace std;
- typedef long long ll;
- /* Input - Output */
- #define pc putchar
- #define gc getchar
- template<typename T>
- inline void out(T a)
- {
- int i=0;
- char s[20];
- if(a==0) s[i++]='0';
- if(a<0) pc('-'),a=-a;
- while(a>0) s[i++]=a%10+'0',a/=10;
- --i;
- while(i>=0) pc(s[i--]);
- pc(' ');
- }
- inline void out(char a) { pc(a); }
- inline void out(const char *s)
- {
- int n=strlen(s);
- for(int i=0;i<n;i++) pc(s[i]);
- }
- inline void out(char *s)
- {
- int n=strlen(s);
- for(int i=0;i<n;i++) pc(s[i]);
- }
- inline void out(string s)
- {
- int n=s.length();
- for(int i=0;i<n;i++) pc(s[i]);
- }
- inline void out(double n) { printf("%.15lf ",n); }
- inline void out() { pc('\n'); }
- inline void in(double &n) { scanf("%lf",&n); }
- template<typename T>
- inline void in(T &n)
- {
- register T c=gc();
- n=0;
- bool neg=false;
- for(;((c<48 || c>57) && c!='-'); c=gc());
- if(c=='-') neg=true,c=gc();
- for(;(c>47 && c<58);c=gc()) n=(n<<1)+(n<<3)+c-48;
- if(neg) n*=-1;
- }
- inline void in(char &a)
- {
- while(a<33) a=gc();
- }
- inline void in(char *s)
- {
- register char c=0;
- register int i=0;
- while(c<33) c=gc();
- while(c!='\n') s[i]=c,c=gc(),i++;
- s[i]='\0';
- }
- inline void in(string &s)
- {
- register char c=0;
- s="";
- while(c<33) c=gc();
- while(c!='\n') s+=c,c=gc();
- }
- /*...........................*/
- const int MAXN=2e5+5;
- int a[MAXN];
- int main()
- {
- #ifndef ONLINE_JUDGE
- freopen("input.txt","r",stdin);
- freopen("output.txt","w",stdout);
- #endif
- int n;
- in(n);
- for(int i=0;i<n;i++)
- in(a[i]);
- int cnt=0;
- for(int i=0;i<n;i++)
- if(a[i]==1)
- {
- int j=i+1;
- while(j<n && a[j]==1)
- j++;
- cnt=max(cnt,j-i);
- i=j-1;
- }
- int i=0;
- while(i<n && a[i]==1)
- i++;
- int j=n-1;
- while(j>=0 && a[j]==1)
- j--;
- if(i<=j)
- cnt=max(cnt,i+n-1-j);
- out(cnt),out();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement