|
|
|
|
|
|
二分,尺取,反转,折半,坐标离散化,分桶,平方分割
字符串编码---hash函数的应用
摘要:之前就听说过有个叫做hash表的东西,这段时间在上信息论与编码,也接触了一些关于编码的概念,直到今天做百度之星的初赛的d题时,才第一次开始学并用hash 一开始我用的是mutimap和mutiset,先对字符串从小到大排序,再存进mutimap中,之后遍历mutimap的键,结果都超时了,代码如下:
阅读全文
POJ 2674 Linear world
摘要:POJ 2674 Linear world 题目大意: 一条线上N只蚂蚁,每只蚂蚁速度固定,方向和坐标不同,碰头后掉头,求最后掉下去那只蚂蚁的时间和名字。 注意两点: 相撞可视为擦肩而过,蚂蚁们不管掉不掉头它们的相对位置保持不变 这个题是大白上原来的蚂蚁相撞问题(POJ 1852)的加强版 如果只考
阅读全文
POJ 1222 EXTENDED LIGHTS OUT(翻转+二维开关问题)
摘要:POJ 1222 EXTENDED LIGHTS OUT 今天真是完美的一天,这是我在poj上的100A,留个纪念,马上就要期中考试了,可能后面几周刷题就没这么快了,不管怎样,为下一个200A奋斗, 这个题是大白上的牛翻转颜色的题(P153)的弱化版,典型的开关问题;
阅读全文
POJ3185 The Water Bowls(反转法or dfs 爆搜)
摘要:POJ3185 The Water Bowls 题目大意: 奶牛有20只碗摆成一排,用鼻子顶某只碗的话,包括左右两只在内的一共三只碗会反向,现在给出碗的初始状态,问至少要用鼻子顶多少次才能使所有碗都朝上 一开始试了一下dfs,由于对dfs还是不太熟悉,先是用了一个数组b[i]来储存翻转后的状态,后来
阅读全文
POJ3320 Jessica's Reading Problem(尺取+map+set)
摘要:POJ3320 Jessica's Reading Problem set用来统计所有不重复的知识点的数,map用来维护区间[s,t]上每个知识点出现的次数,此题很好的体现了map的灵活应用
阅读全文
POJ2100 Graveyard Design(尺取法)
摘要:POJ2100 Graveyard Design 题目大意:给定一个数n,求出一段连续的正整数的平方和等于n的方案数,并输出这些方案,注意输出格式; 循环判断条件可以适当剪支,提高效率,(1^2+2^2+..n^2)=n*(n+1)*(2n+1)/6; 尺取时一定要注意循环终止条件的判断。
阅读全文
POJ2566-Bound Found (尺取法)
摘要:POJ2566-Bound Found 题目大意:给出一段长度为n的数列,数列中的元素有正有负,求一段连续的区间,使得该区间的和的绝对值最接近给定的值 尺取法一般适用于对一段连续的区间的和进行处理的情况,反复推进区间复杂度一般为O(n) 当区间的元素都正整数时,区间和是单调递增的,通过不断向前推进区
阅读全文
POJ3662 Telephone Lines( dijkstral + 二分 )
摘要:POJ3662 Telephone Lines 题目大意:要在顶点1到顶点n之间建一条路径,假设这条路径有m条边,其中有k条边是免费的,剩余m-k条边是要收费的, 求这m-k条边中花费最大的一条边的最小花费. 让m条边中原本花费最大的k条边成为免费的边,则这时m-k条边中花费最大的一条边的花费最小.
阅读全文
POJ3658Matrix( 双重二分+负数+死循环)
摘要:POJ 3658 Matrix 双重二分,wa了一下午,实在不太明白为啥一写二分就会进入死循环. INF要设的大一些,本题设0x3f3f3f3f会wa. 本题有负数, 二分时(l+r)/2与(l+r)>>1的结果有所不同; 如 l=0,r=-1,则 (l+r)/2=0,而(l+r)>>1=-1,而我
阅读全文
POJ2976 Dropping tests(二分+精度问题)
摘要:恢复内容开始 POJ2976 Dropping tests 这个题就是大白P144页的一个变形,二分枚举x,对a[i]-x*b[i]从大到小进行排序,选取前n-k个判断和是否大于等于0,若满足条件,增大下限,否则,减小下限。 这个题因为精度问题wa了n次,后来干脆把a[i]和b[i]改成double
阅读全文
POJ3104 Drying(二分查找)
摘要:POJ3104 Drying 这个题由于题目数据比较大(1 ≤ ai ≤ 109),采用贪心的话肯定会超时,自然就会想到用二分. 设C(x)为true时表示所用时间为X时,可以把所有的衣服都烘干或者自然晾干, 此题自然就转化为了求把让所有衣服都干(烘干+晾干)所用的最小时间, 当c(X)为true时
阅读全文
POJ 3273 Monthly Expense(二分查找+边界条件)
摘要:POJ 3273 Monthly Expense 此题与POJ3258有点类似,一开始把判断条件写错了,wa了两次,二分查找可以有以下两种: 我一开始是写的下面这种,下面这种要单独判断lb和ub的值,因为用下面这种判断lb,ub都可能成立 二分查找的边界判断一定要灵活
阅读全文
POJ3285 River Hopscotch(最大化最小值之二分查找)
摘要:POJ3285 River Hopscotch 此题是大白P142页(即POJ2456)的一个变形题,典型的最大化最小值问题. C(x)表示要求的最小距离为X时,此时需要删除的石子.二分枚举X,直到找到最大的X,由于c(x)=m时满足题意,所以最后输出的是ub-1或者lb(lb==ub-1 注意相邻
阅读全文
POJ 1064 Cable master(二分查找+精度)(神坑题)
摘要:POJ 1064 Cable master 一开始把 int C(double x) 里面写成了 int C(int x) ,莫名奇妙竟然过了样例,交了以后直接就wa。 后来发现又把二分查找的判断条件写错了,wa了n次,当 c(mid)<=k时,令ub=mid,这个判断是错的,因为要找到最大切割长度
阅读全文
|
|