Pagini recente » Cod sursa (job #2619650) | Cod sursa (job #2621662) | Cod sursa (job #2282516) | Cod sursa (job #2567742)
#include <bits/stdc++.h>
#define Nmax 1000001
using namespace std;
ifstream fin ("curcubeu.in");
ofstream fout ("curcubeu.out");
int a[ Nmax ] , b[ Nmax ], c[ Nmax ] , n , A , B , C , nex[ Nmax ] ,co[Nmax];
void precalc ( )
{
int i ;
for( i = 1 ; i <= n - 1 ; i ++ )
{
a[ i ] = A ;
b[ i ] = B ;
c[ i ] = C ;
A = ( A * ( i + 1 ) ) % n ;
B = ( B * ( i + 1 ) ) % n ;
C = ( C * ( i + 1 ) ) % n ;
}
}
int main()
{
fin>> n >> A >> B >> C ;
precalc();
int i , j ;
for ( i = n - 1 ; i >= 1 ; i -- )
{
for( j = min ( b[i] , a[ i ] ) ; j<= max ( b[i] , a[ i ] ) ; j ++ )
{
if( co [ j ] == 0 )
{
co[ j ] = i ;
nex[ i ] = j ;
}
else
i = nex [ co [ j ] ] ;
}
}
for( i = 1 ; i <= n - 1 ; i ++)
fout<<c[ co [ i ] ]<<" ";
return 0;
}