编程题

1387:搭配购买(buy)


时间限制: 1000 ms         内存限制: 65536 KB
提交数:7560    通过数: 4012

【题目描述】

Joe觉得云朵很美,决定去山上的商店买一些云朵。商店里有$n$朵云,云朵被编号为$1,2,…,n$,并且每朵云都有一个价值。但是商店老板跟他说,一些云朵要搭配来买才好,所以买一朵云则与这朵云有搭配的云都要买。

但是Joe的钱有限,所以他希望买的价值越多越好。

【输入】

第1行$n,m,w$,表示$n$朵云,$m$个搭配,Joe有$w$的钱。

第2~n+1行,每行$c_i$,$d_i$表示$i$朵云的价钱和价值。

第n+2~n+1+m行,每行$u_i$,$v_i$,表示买$u_i$就必须买$v_i$,同理,如果买$v_i$就必须买$u_i$。

【输出】

一行,表示可以获得的最大价值。

【输入样例】

5 3 10
3 10
3 10
3 10
5 100
10 1
1 3
3 2
4 2

【输出样例】

1

【提示】

【数据范围】

30%的数据保证:$n\\le 100$;

50%的数据保证:$n\\le 1,000;m\\le100;w\\le1,000$;

100%的数据保证:$n\\le 10,000;0\\le m\\le 5000;w\\le 10,000$。

查看答案
赣ICP备20007335号-2