Pagini recente » Cod sursa (job #2979899) | Cod sursa (job #1733926) | Cod sursa (job #2892851) | Cod sursa (job #2701742) | Cod sursa (job #3265917)
#include <iostream>
#include <vector>
#include <tuple>
#include <algorithm>
#include <numeric>
#include <unordered_map>
#include <set>
#include <fstream>
using namespace std;
ifstream fin("oz.in");
ofstream fout("oz.out");
int a[10003], n;
int x[100003], y[100003], d[100003], m;
int main(){
int i, j, D, k, c;
fin >> n >> m;
for (i = 1; i <= n; i++)
a[i] = 1;
for (k = 1; k <= m; k++)
{
fin >> i >> j >> D;
x[k] = i; y[k] = j; d[k] = D;
c = __gcd(D, a[i]);
a[i] = a[i] / c * D;
c = __gcd(D, a[j]);
a[j] = a[j] / c * D;
}
for (i = 1; i <= m; i++)
if (__gcd(a[x[i]], a[y[i]]) != d[i])
{
fout << "-1\n";
fout.close();
return 0;
}
for (i = 1; i <= n; i++)
fout << a[i] << " ";
return 0;
}