摘要:
题意: 一个人有一把剑,剑有一个耐久度m,现在有n个敌人,每个敌人都对应一个ai值和bi值,ai表示 杀掉这个敌人需要消耗ai的的武器耐久度,同时可以获得他的剑并且可以用他的剑杀死bi个敌人, 问最多可以杀掉多少个敌人。分析: 有两种情况: ①只杀 bi为 0 的; ②杀了某个bi不为 0 的敌人,那么所有bi不为 0 的最后都会被杀掉, 这种情况只要枚举多少个bi不为0 的敌人是花自己的耐久度去杀的,找一个最优解 要让用耐久度杀的敌人消耗的耐久度尽可能小,需要实现按照ai排序,找ai最小的每次。#include<cstdio>#include<cstring>#inc 阅读全文
posted @ 2012-09-24 20:46
'wind
阅读(1466)
评论(0)
推荐(0)
摘要:
题意: 有 n+1 个城市编号 0..n,有 m 条无向边,在 0 城市有个警察总部,最多可以派出 k 个逮捕队伍,在1..n 每个城市有一个犯罪团伙, 每个逮捕队伍在每个城市可以选择抓或不抓,如果抓了 第 i 个城市的犯罪团伙,第 i-1 个城市的犯罪团伙就知道了消息 ,如果第 i-1 的犯罪 团伙之前没有被抓,任务就失败,问要抓到所有的犯罪团伙,派出的队伍需要走的最短路是多少。 分析: 最小费用最大流,需要注意的地方在于怎么去保证每个每个城市的团伙仅仅被抓一次,且在抓他之前,第i-1城市的团伙已经被抓。 方法是把拆点后的城市 i 和 i`之间的费用要设成一个很小的负值,这样可以保证该城市一 阅读全文
posted @ 2012-09-24 19:59
'wind
阅读(679)
评论(0)
推荐(0)
摘要:
题意: 有n 个数从1 到 n 有序排好,对应两种操作: 1 x y p 找出区间【x,y】内与p互质的数的和 2 x c 将第x位置的数变成 c分析: 由于修改的次数比较少,可以先计算出没有修改时候指定区间内与p 互质的数的和,再去根据替换的数去修改, 找出连续数字区间内与p 互质数的和可以先将p分解质因数,然后用容斥原理快速的计算出区间满足条件的数的 和即可。#include<stdio.h>#include<string.h>#define clr(x)memset(x,0,sizeof(x))#define maxn 400005bool v[maxn];int 阅读全文
posted @ 2012-09-24 18:36
'wind
阅读(204)
评论(0)
推荐(0)


浙公网安备 33010602011771号