Pagini recente » Cod sursa (job #1355341) | Cod sursa (job #2414651) | Cod sursa (job #2671423) | Cod sursa (job #53348) | Cod sursa (job #2655084)
#include <fstream>
using namespace std;
struct ura {
int i; int j; int d;
}v[100001];
int sol[10001];
int gcd(int a,int b) {
int r;
while(b) {
r=a%b;
a=b;
b=r;
}
return a;
}
ifstream fin("oz.in");
ofstream fout("oz.out");
int main() {
int n,m,i;
fin>>n>>m;
for(i=1;i<=n;i++)
sol[i]=1;
for(i=1;i<=m;i++) {
fin>>v[i].i>>v[i].j>>v[i].d;
sol[v[i].i]=sol[v[i].i]/gcd(sol[v[i].i],v[i].d)*v[i].d;
sol[v[i].j]=sol[v[i].j]/gcd(sol[v[i].j],v[i].d)*v[i].d;
}
i=1;
while(i<=m && gcd(sol[v[i].i],sol[v[i].j])==v[i].d)
i++;
if(i<=m)
sol[n=1]=-1;
for(i=1;i<=n;i++)
fout<<sol[i]<<' ';
return 0;
}