Caocao's Bridges HDU - 4738 找桥
题意: 曹操在赤壁之战中被诸葛亮和周瑜打败。但他不会放弃。曹操的军队还是不擅长打水仗,所以他想出了另一个主意。他在长江上建造了许多岛屿,在这些岛屿的基础上,曹操的军队可以轻易地攻击周瑜的军队。曹操还修建了连接岛屿的桥梁。如果所有的岛屿都用桥连接起来,曹操的军队就可以很方便地部署在这些岛屿之间。周瑜无法忍受,他想毁掉曹操的一些桥梁,把一个或多个岛屿与其他岛屿分开。周瑜身上只有一颗炸弹,是诸葛亮留下的,所以他只能毁掉一座桥。周瑜必须派人带着炸弹去炸毁那座桥。桥上可能有警卫。轰炸队的士兵人数不能少于一座桥的守卫人数,否则任务就会失败。请至少计算出周瑜要派多少士兵去完成离岛任务。 题解+代码: 1 //题解: 2 //这道题。。。。。。T_T 3 //这道题要先判断有没有桥,没有桥的话就直接输出-1 4 //如果有桥的话还要注意如果有一座桥上没有警卫,但是我们还是要派一人去炸桥 5 //所以要有两个特判,卧槽! 6 #include<stdio.h> 7 #include<string.h> 8 #include<iostream> 9 #include<algorithm> 10 #include<queue> 11 #include<map> 12 #include<vector> 13 using namespace std; 14 const int maxn = 1005; 15