珂朵莉的二分图
题号:NC14830
时间限制:C/C++/Rust/Pascal 3秒,其他语言6秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

珂朵莉给你一个无向图

其有n个点,m条边

对于每条边,她想知道删了这条边之后这个图是不是一个二分图

输入描述:

第一行两个整数n,m
之后m行,每行两个数x,y表示有一条x和y之间的无向边
第i个边的序号即为i

输出描述:

第一行输出一个整数,表示有多少边满足条件
接下来一行,从小到大输出这些边的序号
如果没有边满足条件,只输出一行一个数0,注意不要多输出换行
示例1

输入

复制
4 4
1 2
1 3
2 4
3 4

输出

复制
4
1 2 3 4

说明

对于100%的数据,有n , m<=1000000

备注:

对于100%的数据,有n , m<=1000000