Pagini recente » Rating FMI CostinVictorGabriel (CostinV) | Cod sursa (job #1424436) | Cod sursa (job #1401836) | Cod sursa (job #3293227) | Cod sursa (job #1362751)
#include <fstream>
using namespace std;
ifstream is("reguli.in");
ofstream os("reguli.out");
int N, K, x, y, aux;
int D[500001];
int PI[500001];
int main()
{
is >> N;
for ( int i = 1; i <= N; ++i )
{
if ( i == 1 )
is >> x >> y;
else
{
x = y;
is >> y;
}
D[i] = y-x;
}
K = 0;
for ( int i = 2; i <= N-1; ++i )
{
while ( K > 0 && D[K+1] != D[i] )
K = PI[K];
if ( D[K+1] == D[i] )
++K;
PI[i] = K;
}
os << (N-1) - PI[N-1] << '\n';
for ( int i = 1; i <= ((N-1)-PI[N-1]); ++i )
os << D[i] << '\n';
is.close();
os.close();
}