A831.Cereal 2--Silver

提高+/省选-

USACO

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

Farmer John's cows like nothing more than cereal for breakfast! In fact, the
cows have such large appetites that they will each eat an entire box of cereal
for a single meal.
The farm has recently received a shipment with MM different types of cereal
(2M105)(2\le M\le 10^5). Unfortunately, there is only one box of each cereal! Each
of the NN cows (1N105)(1\le N\le 10^5) has a favorite cereal and a second favorite
cereal. When given a selection of cereals to choose from, a cow performs the
following process:

  1. If the box of her favorite cereal is still available, take it and leave.
  2. Otherwise, if the box of her second-favorite cereal is still available, take it and leave.
  3. Otherwise, she will moo with disappointment and leave without taking any cereal.
    Find the minimum number of cows that go hungry if you permute them optimally.
    Also, find any permutation of the NN cows that achieves this minimum.

输入格式

The first line contains two space-separated integers NN and M.M.
For each 1iN,1\le i\le N, the ii-th line contains two space-separated integers
fif_i and sis_i (1fi,siM1\le f_i,s_i\le M and fisif_i\neq s_i) denoting the favorite
and second-favorite cereals of the ii-th cow.

输出格式

Print the minimum number of cows that go hungry, followed by any permutation
of 1N1\ldots N that achieves this minimum. If there are multiple permutations,
any one will be accepted.

输入输出样例

  • 输入#1

    8 10
    2 1
    3 4
    2 3
    6 5
    7 8
    6 7
    7 5
    5 8
    

    输出#1

    1
    1
    3
    2
    8
    4
    6
    5
    7
    

说明/提示

In this example, there are 88 cows and 1010 types of cereal.
Note that we can effectively solve for the first three cows independently of
the last five, since they share no favorite cereals in common.
If the first three cows choose in the order [1,2,3][1,2,3], then cow 11 will
choose cereal 22, cow 22 will choose cereal 33, and cow 33 will go hungry.
If the first three cows choose in the order [1,3,2][1,3,2], then cow 11 will
choose cereal 22, cow 33 will choose cereal 33, and cow 22 will choose
cereal 44; none of these cows will go hungry.
Of course, there are other permutations that result in none of the first three
cows going hungry. For example, if the first three cows choose in the order
[3,1,2][3,1,2] then cow 33 will choose cereal 22, cow 11 will choose cereal 11,
and cow 22 will choose cereal 33; again, none of cows [1,2,3][1,2,3] will go
hungry.
It can be shown that out of the last five cows, at least one must go hungry.

首页