编程题
### 问题描述 小齐有 $N$ 个牧场,方便地编号为 $1...N$,通过 $M$ 条双向路径相连。路径 $i$ 连接牧场 $A_i$ 和牧场 $B_i$,其中 $A_i \neq B_i$。两条路径可以连接相同的一对牧场。 贝茜决定为小齐的生日装饰牧场。她想在每个牧场放置一个大型标志,标志上要么是字母 $F$,要么是字母 $J$,但为了不让小齐感到困惑,她希望确保如果两个牧场通过一条路径相连,则它们的标志字母不同。 标志公司坚持要向贝茜收取比 $J$ 标志更多的费用,因此贝茜想要最大化使用 $J$ 标志的数量。请确定这个数字,如果没有有效的方法来安排标志,则输出 $-1$。 ### 输入格式 第 $1$ 行:两个整数 $N$ 和 $M$。 第 $2$ 行至第 $M+1$ 行:两个整数 $A_i$ 和 $B_i$,表示存在一条从 $A_i$ 到 $B_i$ 的双向路径。 ### 输出格式 一个整数,表示贝茜可以使用的 $J$ 标志的最大数量。如果无法找到有效的解决方案来安排标志,则输出 $-1$。 ### 样例输入 ``` 4 4 1 2 2 3 3 4 4 1 ``` ### 样例输出 ``` 2 ``` ### 评测数据规模 $1 \leq N \leq 50,000$,$1 \leq M \leq 100,000$,$1 \leq A_i \leq N$,$1 \leq B_i \leq N$。
查看答案
赣ICP备20007335号-2