Pagini recente » Cod sursa (job #2980217) | Cod sursa (job #1608573) | Cod sursa (job #353692) | Cod sursa (job #1880860) | Cod sursa (job #2837020)
#include <fstream>
#include <cstring>
#define NMAX 10005
#define MAX 2000000000
#define unsigned long long int long long
using namespace std;
ifstream in("oz.in");
ofstream out("oz.out");
long long v[NMAX];
long long cmmdc(long long a, long long b)
{
while (b)
{
long long r = a % b;
a = b;
b = r;
}
return a;
}
long long cmmmc(long long a, long long b)
{
return a * b / cmmdc(a, b);
}
int main()
{
long long n, m, x, y, a, i, j;
bool ok = true;
in >> n >> m;
for (i = 1; i <= NMAX; ++i)
v[i] = 1;
for (i = 1; i <= m; ++i)
{
in >> x >> y >> a;
v[x] = cmmmc(v[x], a);
v[y] = cmmmc(v[y], a);
if (v[x] > MAX || v[y] > MAX)
ok = false;
}
if (ok == false)
out << -1;
else
{
for (i = 1; i <= n; ++i)
{
out << v[i] << " ";
}
}
return 0;
}