Pagini recente » Cod sursa (job #2329391) | Cod sursa (job #693378) | Cod sursa (job #425201) | Cod sursa (job #2605369) | Cod sursa (job #2811012)
#include <bits/stdc++.h>
#define int long long
using namespace std;
ifstream fin("curcubeu.in");
ofstream fout("curcubeu.out");
const int NMAX = 1000000;
int n;
int a[NMAX + 5];
int b[NMAX + 5];
int c[NMAX + 5];
int nxt[NMAX + 5];
int ans[NMAX + 5];
int32_t main()
{
fin >> n >> a[1] >> b[1] >> c[1];
for(int i = 2; i < n; i ++)
{
a[i] = (a[i - 1] * i) % n;
b[i] = (b[i - 1] * i) % n;
c[i] = (c[i - 1] * i) % n;
}
for(int i = n - 1; i >= 1; i --)
{
int st = min(a[i], b[i]);
int dr = max(a[i], b[i]);
for(int j = st; j <= dr; j ++)
{
if(nxt[j] == 0)
{
nxt[j] = dr;
ans[j] = c[i];
}
else
{
j = nxt[j];
}
}
}
for(int i = 1; i < n; i ++)
{
fout << ans[i] << '\n';
}
return 0;
}