Pagini recente » Cod sursa (job #2804788) | Cod sursa (job #3137164) | Cod sursa (job #1856741) | Cod sursa (job #2513312) | Cod sursa (job #2108471)
#include <bits/stdc++.h>
using namespace std;
ifstream in("oz.in");
ofstream out("oz.out");
struct tr
{
int x, y, k;
}v[10005];
int n, m;
int arr[10005];
int cmmdc( int a, int b )
{
if( b == 0 )
return a;
else
{
int r = a % b;
return cmmdc( b, r );
}
}
int main() {
in>>n>>m;
for( int i = 1; i <= n; i++ )
arr[i] = 1;
for( int i = 1; i <= m; i++ )
{
in>>v[i].x>>v[i].y>>v[i].k;
arr[ v[i].x ] *= v[i].k;
arr[ v[i].y ] *= v[i].k;
}
for( int i = 1; i <= m; i++ )
if( cmmdc( arr[ v[i].x ], arr[ v[i].y ] )!= v[i].k )
{
out<<-1;
return 0;
}
for( int i = 1; i <= n; i++ )
out<<arr[i]<<" ";
return 0;
}