Pagini recente » Cod sursa (job #2127139) | Cod sursa (job #3306467) | Cod sursa (job #1758714) | Cod sursa (job #3338884) | Cod sursa (job #3325489)
#include <fstream>
#define nmax (int)(5e5+1)
using namespace std;
ifstream cin("reguli.in");
ofstream cout("reguli.out");
long long a[nmax],n,last,lps[nmax];
void LPS(){
int i=2,len=0;
while(i<=n){
if(a[i]==a[len+1]){
len++;
lps[i++]=len;
}else if(len==0)
i++;
else
len=lps[len-1];
}
}
int main()
{
cin>>n>>last;
for(int i=1;i<n;i++){
cin>>a[i];
int aux=a[i]-last;
last=a[i];
a[i]=aux;
}
n--;
LPS();
cout<<n-lps[n]<<'\n';
for(int i=1;i<=n-lps[n];i++)
cout<<a[i]<<'\n';
return 0;
}