Pagini recente » Cod sursa (job #2753380) | Cod sursa (job #545714) | Cod sursa (job #2922255) | Cod sursa (job #2677056) | Cod sursa (job #991845)
Cod sursa(job #991845)
#include<fstream>
#include<vector>
#include<algorithm>
using namespace std;
long i,j,n,m,d[64001][15],x,y,A,B,C,D,Z,p,nr,prim[32001];
long lm,k,coloana[64001],tata[32001],min1,lca,c[32001],niv[32001];
bool viz[32001];
int main()
{
ifstream f("atac.in");
ofstream g("atac.out");
f>>n>>m>>p;
for(i=2;i<=n;++i)
{
f>>x>>y;
tata[i]=x;
c[i]=y;
niv[i]=niv[x]+1;
}
f>>x>>y>>A>>B>>C>>D;
while(m)
{
Z=1<<20;
int xx=x,yy=y;
while(niv[x]>niv[y])
{
Z=min(Z,c[x]);
x=tata[x];
}
while(niv[y]>niv[x])
{
Z=min(Z,c[y]);
y=tata[y];
}
while(x!=y)
{
Z=min(Z,min(c[x],c[y]));
x=tata[x];
y=tata[y];
}
if(Z==1<<20)
Z=0;
if(m<=p)
g<<Z<<"\n";
x=(A*xx+B*yy)%n+1;
y=(C*yy+D*Z)%n+1;
--m;
}
return 0;
}