2 solutions
-
2
#include<bits/stdc++.h> using namespace std; int const N=1e6+10; int a[N]; int s[N]; int main() { int n,ans=0;cin>>n; for(int i=1;i<=n;i++) { cin>>a[i]; } sort(a+1,a+n+1); n=unique(a+1,a+n+1)-(a+1); for(int i=1;i<=n;i++) { int j=i+1; while(j<=n&&a[j]==a[j-1]+1) j++; j--; int len=j-i+1; ans=max(ans,len); } cout<<ans; return 0; } -
-1
#include<bits/stdc++.h> using namespace std; int a[100010],b[100010]; int main() { int k; cin>>k; for(int i=1;i<=k;i++) { cin>>a[i]; } sort(a+1,a+k+1); int n=1; int t=a[1]-1; for(int i=1;i<=k;i++) { if (a[i]==t) { } else { t=a[i]; b[n]=a[i]; n++; } } /* cout<<n<<endl; for(int i=1;i<n;i++) { cout<<b[i]<<" "; } */ t=b[1]; int x=1; int S=1; for(int i=2;i<=n-1;i++) { if (b[i]-1==t) { x++; t=b[i]; S=max(x,S); } else { t=b[i]; x=1; } } cout<<S; return 0; }
- 1
Information
- ID
- 2891
- Time
- 1000ms
- Memory
- 256MiB
- Difficulty
- 10
- Tags
- # Submissions
- 9
- Accepted
- 3
- Uploaded By