Pagini recente » Cod sursa (job #1465766) | Cod sursa (job #2291083) | Cod sursa (job #356435) | Cod sursa (job #1127635) | Cod sursa (job #173217)
Cod sursa(job #173217)
#include<fstream>
using namespace std;
long long p;
int n, m, v[10001];
int iv[100001], jv[100001], dv[100001];
int gcd(int a, int b){
int c;
while(b){
c=a%b;
b=a;
a=c;
}
return a;
}
int lcm(int a, int b){
p=(long long)a*b;
p=p/gcd(a,b);
int l=p;
return l;
}
int main(){
int i;
ifstream f("oz.in");
f>>n>>m;
for(i=1;i<=n;i++)
v[i]=1;
for(i=0;i<m;i++){
f>>iv[i]>>jv[i]>>dv[i];
v[iv[i]]=lcm(v[iv[i]], dv[i]);
v[jv[i]]=lcm(v[jv[i]], dv[i]);
}
f.close();
ofstream g("oz.out");
for(i=1;i<n;i++)
if(v[i]>2000000000){
g<<"-1\n";
g.close();
return 0;
}
for(i=0;i<m;i++)
if(gcd(iv[i], jv[i])!=dv[i]){
g<<"-1\n";
g.close();
return 0;
}
for(i=1;i<=n;i++)
g<<v[i]<<' ';
g<<'\n';
g.close();
return 0;
}