1918: 请客
内存限制:256 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:3
解决:1
题目描述
话说yk拿到数学保送资格之后,大家一致要求yk请客~~(yk:这是什么逻辑,我又不靠数学吃饭……众人:我们靠你吃饭的,yk你快请客吧)于是,某一个阳光明媚的中午,yk决定请大家出去吃饭,但是选择吃饭的地点是一个困扰yk的问题。
省中附近一共有n个可以请客吃饭的地点,cs在1号点,lqp在2号点,jzj在3号点,yk可以选择在任意一个地点请大家吃饭,因为cs、lqp、jzj都是很聪明的同学,他们只会沿着最短路走到目的地,但是如果有多条最短路到达目的地,他们会随机选择一条。yk为了避免被那3个同学联合起来宰一顿,不希望他们到目的地的最短路有重合的边。现在的问题是,yk有多少种选择,可以保证cs、lqp、jzj中任意两个人到达目的地的路径都不可能有重合的边?
输入
第一行两个正整数N和M,表示地点个数和道路条数
接下来M行,每行包含三个正整数a,b,c(1<=a,b<=N,1<=c<=10,b≠a),表示从a到b和从b到a都需要花费c分钟的时间
输出
如果不存在满足要求的地点,输出仅一行”impossible”(不含引号),否则,第一行输出一个数P,表示有P个地点满足yk的要求,接下来一行,P个用空格隔开的数,表示满足要求的地点编号(升序输出)。
样例输入 复制
5 5
1 5 2
4 5 2
5 2 3
2 4 5
3 4 1
样例输出 复制
1
5
提示
【数据规模】
对于10%的数据,3<=N<=5,1<=M<=10;
对于100%的数据,3<=N<=3000,1<=M<=200000