Cod sursa(job #2462200)
Utilizator | Data | 26 septembrie 2019 21:25:03 | |
---|---|---|---|
Problema | Reguli | Scor | 70 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.71 kb |
#include <fstream>
using namespace std;
long long v[500005];
int main()
{
ifstream cin("reguli.in");
ofstream cout("reguli.out");
int n,aux,x,ans;
cin>>n>>aux;
for(int i=1;i<=n-1;i++)
{
cin>>x;
v[i]=x-aux;
aux=x;
}
int cnt=1;
while(v[cnt+2]!=v[1]&&cnt+2<=n+1)
{
cnt++;
}
ans+=cnt;
for(int i=cnt+2;i<=n-1;i++)
{
if(v[i]!=v[i-cnt])
{
ans++;
cnt++;
}
}
for(int i=1;i<n-ans;i++)
if(v[i]!=v[i+ans])
{ans=n-1;break;}
cout<<ans<<endl;
for(int i=1;i<=ans;i++)
{
cout<<v[i]<<endl;
}
return 0;
}