Pagini recente » Cod sursa (job #2630360) | Cod sursa (job #1372697) | Cod sursa (job #2718577) | Cod sursa (job #741715) | Cod sursa (job #941109)
Cod sursa(job #941109)
#include <iostream>
#include <fstream>
#include <cstdio>
#include <vector>
#define SIZE 500005
using namespace std;
long long sir[SIZE];
int N;
int process_array(long long sir[SIZE]) {
int ret = 0;
int cnd = 0;
int pos = 1;
while(pos < N - 1) {
if (sir[cnd] == sir[pos]) {pos++; cnd++;}
else {if (cnd == 0) pos++; else cnd = 0;}
//cout << cnd << ' ' << pos << endl;
}
ret = pos - cnd;
return ret;
}
int main()
{
freopen ("reguli.in", "r", stdin);
freopen ("reguli.out", "w", stdout);
long long a, b;
scanf("%d", &N);
scanf("%lld", &a);
for(int i = 0; i < N - 1; i++) {
scanf("%lld", &b);
sir[i] = b - a;
a = b;
}
int result;
result = process_array(sir);
printf("%d\n", result);
for(int i = 0; i < result; i++) {
printf("%lld\n", sir[i]);
}
return 0;
}