IT民工
加油!

随笔分类 -  枚举

HDU 4435 charge-station
摘要:2012天津赛区现场赛的E题,刚才做模拟比赛的时候和安神讨论了很久,思路没理清。大致题意是 给出N个点,让你选择性地建立加油站,在第i个点建立加油站的费用为2^i-1,要使自己能从1号点经过所有点回到原点,点可以重复经过,加油费用不计,每次加油最多能跑的距离为D。输出的答案是2进制,由费用10进制转化过来就是在第i个点建立加油站,答案从右往左数第i个值就为1。第一步判断所有点都建立加油站能不能完成题目的要求,不能输出-1。能完成要求的话,我们注意到建站费用是和点的编号有关的,比如第i个点建站的费用是等于前i-1个点都建站的费用+1,二进制的规律。然后我们可以从后往前判断当前加油站能不能拆。di 阅读全文
posted @ 2012-10-28 21:25 找回失去的 阅读(700) 评论(0) 推荐(0)
HDU 4282 A very hard mathematic problem
摘要:枚举 + 二分,代码写得挫!#include <stdio.h>#include <string.h>#include <stdlib.h>#include <math.h>typedef __int64 LL;LL x, y, z, D, S;LL k;int main(){ int i, j; while(scanf("%I64d", &k), k) { S = 0; for(D = 1; D < k / 2; D <<= 1, S ++); bool flag1, flag2; LL a, b, 阅读全文
posted @ 2012-09-15 11:06 找回失去的 阅读(238) 评论(0) 推荐(0)