Pagini recente » Cod sursa (job #36857) | Cod sursa (job #2210821) | Cod sursa (job #294176) | Cod sursa (job #3282524) | Cod sursa (job #483955)
Cod sursa(job #483955)
#include <stdio.h>
int n, a[5002], b[5002], c[5002], v[5002];
void rez (int nr, int x)
{
int i;
for (i = 1; i <= n && nr; i ++)
if (v[i] == 0)
{
nr --;
if (nr == 0)
v[i] = x;
}
}
int main ()
{
freopen ("sortare.in", "r", stdin);
freopen ("sortare.out", "w", stdout);
int i, nr = 0;
scanf ("%d", &n);
a[1] = b[1] = c[1] = 1;
for (i = 2; i <= n; i ++)
scanf ("%d %d %d", &a[i], &b[i], &c[i]);
for (i = n; i; i --, nr ++)
if (a[i] != b[i] && b[i] != c[i] && c[i] != a[i])
{
rez (a[i], i - 1);
if (a[i] < b[i])
rez (b[i] - 1, i);
else
rez (b[i], i);
i --;
}
else
if (a[i] == b[i] || a[i] == c[i])
rez (a[i], i);
else
rez (b[i], i);
printf ("%d\n", nr);
for (i = 1; i <= n; i ++)
printf ("%d ", v[i]);
return 0;
}