Pagini recente » Cod sursa (job #1714558) | Cod sursa (job #2027436) | Cod sursa (job #2951009) | Cod sursa (job #389650) | Cod sursa (job #86045)
Cod sursa(job #86045)
var a,b,c:array[1..1010]of longint;
v:array[1..1000001]of boolean;
x:array[1..1000001]of longint;
i,j,a1,b1,c1,n:longint;
function min(a,b:longint):longint;
begin
min:=a;
if b<min then
min:=b;
end;
function max(a,b:longint):longint;
begin
max:=a;
if b>max then
max:=b;
end;
begin
assign(input,'curcubeu.in');reset(input);
assign(output,'curcubeu.out');rewrite(output);
readln(n,a[1],b[1],c[1]);
writeln('1 ',a[1],' ',b[1],' ',c[1]);
for i:=2 to n-1 do
begin
a[i]:=(a[i-1]*i)mod n;
b[i]:=(b[i-1]*i)mod n;
c[i]:=(c[i-1]*i)mod n;
writeln(i,' ',a[i],' ',b[i],' ',c[i]);
end;
for i:=n-1 downto 1 do
begin
if not v[c[i]] then
begin
v[c[i]]:=true;
for j:=min(a[i],b[i]) to max(a[i],b[i]) do
if x[j]=0 then
x[j]:=c[i];
end;
end;
for i:=1 to n-1 do
writeln(x[i]);
close(input);close(output);
end.