2145: 房屋编号

内存限制:512 MB 时间限制:2 S 标准输入输出
题目类型:传统 评测方式:Special Judge 上传者:
提交:3 通过:2

题目描述

给定一个 n 个交叉口 n 条街道的城市地图,你需要给每条街道上的房屋编号。
每条街道是连接两个交叉口 u 和 v 的路径,并且有 h 个房屋,这些房屋都位于街道的一侧。
两个交叉口之间最多只有一条街道。
在这条街道上,有两种编号房屋的方式:一种是从与交叉口 u 相邻的房屋编号 1 开始,到与交叉口 v 相邻的房屋编号 h 结束;
另一种是从与交叉口 v 相邻的房屋编号 1 开始,到与交叉口 u 相邻的房屋编号 h 结束。
为了避免混淆,你希望所有交叉口相邻的房屋编号均不相同。
寻找一种满足这个条件的每条街道上房屋编号的方式或者。

输入格式

第一行为正整数 n,1≤n≤100000。
接下来 n 行,每行 3 个整数为 u,v,h,表示交叉口 u 和交叉口 v 之间街道有 h 个房屋。
u≠v,1≤u,v≤n,2≤h≤109

输出格式

按照输入的顺序,对于每条街道输出一个表示房屋编号起始交叉口的数字。
如果存在多个有效解决方案,输出任意一个即可。
如果无解,则输出"impossible"。

输入样例 复制

样例1:
3
1 2 2
2 3 9
3 1 3

样例2:
4
1 2 2
1 3 2
2 3 2
1 4 2

输出样例 复制

样例1:
1
2
3

样例2:
impossible

数据范围与提示

来源:2022.BAPC