Pagini recente » Cod sursa (job #1684218) | Cod sursa (job #402444) | Cod sursa (job #271432) | Cod sursa (job #1683774) | Cod sursa (job #837091)
Cod sursa(job #837091)
#include<fstream>
#define ll long long
#define nmax 500008
using namespace std;
ifstream fin("reguli.in");
ofstream fout("reguli.out");
int N;
ll X[nmax];
int Pi[nmax];
int K;
int main(){
fin >>N;
for( int i = 0; i < N; i++) fin >> X[i];
--N;
for(int i = N ; i ; --i) X[i] -=X[i-1];
int p = 0;Pi[1] = 0;
for(int i = 2; i <= N; i++){
for( ; p && X[i] != X[p + 1] ; p = Pi[p]);
p += (X[i] == X[p + 1]);
Pi[i] = p;
}
K = N - Pi[N];
fout <<K <<'\n';
for(int i = 1; i <= K; i++)
fout << X[i]<<'\n';
fin.close();
return 0;
}