
二分&&三分
笑对这个世界的志贵
这个作者很懒,什么都没留下…
展开
-
二分查找
数据结构实验之查找四:二分查找 Time Limit: 30MS Memory Limit: 65536KB Problem Description 在一个给定的无重复元素的递增序列里,查找与给定关键字相同的元素, 若存在则输出找到的位置,不存在输出-1。Input 一组输入数据,输入数据第一行首先输入两个正整数n ( n < = 10^6 )和m ( m < = 10^4 ),翻译 2017-02-23 19:26:30 · 321 阅读 · 0 评论 -
【最大化最小值】POJ - 2456 Aggressive cows
Problem Description 农夫约翰搭了一间有n间牛舍小屋。牛舍排在一条线上,第i号牛舍在ai的位置。但是他的M头牛对小屋很不满意,因此经常互相攻击。约翰为了防止牛之间互相伤害,因此决定把每头牛都放在离其他牛尽可能远的牛舍。也就是要最大化最近的两头牛之间的距离。思路: 最大化最小值的思路一般就是二分结果。#include<cstdio>#include<algorithm>翻译 2017-12-20 21:17:13 · 387 阅读 · 0 评论 -
【二分答案 保留两位小数】POJ - 1064 Cable master
Problem Description 有n条绳子,它们的长度分别为ai。如果从它们中切割出K条长度相同的绳子的话,这K条绳子每条最长能有多长?答案保留到小数点后2位。思路: 二分答案,判断是否满足,因为结果是小数,所以跑暴力。#include<cstdio>#include<algorithm>#include<cmath>using namespace std;const i翻译 2017-12-20 21:00:03 · 330 阅读 · 0 评论 -
【二分答案 && 贪心】codeforces-847E Packmen
Problem Description 输入n, 接着给你一个长度为n的字符串。 *代表包装, P代表人, .代表为空, 人移动一单位距离需要花费一秒,人可以向左或者向右移动。人只要走到包装的位置,就会把包装吃掉,问你最少需要多少秒。所有的包装就被人全吃完。思路: 二分答案 + 贪心。 对于每个二分的答案mid。从左往右暴力,如果第一个遇到的是P, 那么P下标+mid都可以到翻译 2017-11-24 21:31:44 · 606 阅读 · 1 评论 -
【二分答案】SDUT-4072 小绿的脱单梦
Problem Description 小绿一直坚持不懈的追求他的一个高中女同学。最近妹子终于被他打动,决定在接下来n天对他进行m项考验(同一项考验可能会在不同的两天重复进行,通过一次即可),如果他能全部通过,妹子就会答应和他交往。 小绿在得到消息后,兴奋不已,虽然他是一个不折不扣的weisuo死宅,虽然他除了代码什么都不会,但是他对自己的IQ十分自信!他能准确的估计自己通过某一项考验需翻译 2017-11-24 20:19:14 · 273 阅读 · 0 评论 -
【二分 && 唯一分解定理】LightOJ - 1138 Trailing Zeroes (III)
Problem Description N! 后面有Q个0,问你第一个后面有Q个0的N!。输出N,找不到输出impossible思路: N! = p1^a1 * p2^a2 * … * pn^an。那么后面0的个数就是min(2的指数,5的次数)。由于2比5多,所以我们只考虑5。 100! 有几个0,100/5 = 20, 20/5 = 4, 4/5 = 0 所以100! 后有 20翻译 2017-10-17 11:57:51 · 209 阅读 · 0 评论 -
【二分答案&&最短路】URAL - 2034 Caravans
Problem Description 给你n个点,m条边。接下来m行每行u, v代表u 可以到达v,边权为1。最后一行输入s,f,r。代表s到f的所有最短路中。让你求r到这些最短路中最小值的最大值。(r到这些最短路的距离是最小值。但是因为有很多条最短路,所以找出到这些条最短路的最大值)思路: 先求出s-f的最短路的值res。在求出r到各个点的最短路。这时候二分答案。从1-n查找答案。假设翻译 2017-08-14 21:42:40 · 300 阅读 · 0 评论 -
【二分答案】SDUT 3916 上色的纱雾
Problem Description 输入n,m分别代表,n代表需要上色的n个点的一维下标,m代表你当前拥有的画笔数量。问你把所有点画完最少需要的时间,画笔同时移动一个单位需要一秒。Example Input 3 2 1 4 8 3 1 1 2 9 4 2 1 2 3 6Example Output 3 8 2Hint 两支画笔,第一翻译 2017-06-07 11:24:05 · 461 阅读 · 0 评论 -
CodeForces - 287B Pipeline 二分搜索
Problem Description 给你n个用户,和k-1个管道转换器,分别1转换为2,3,……k; 问你至少需要多少个转换器就可以满足用户需求Input 4 3 5 5 8 4Output 2 1 -1代码:#include<iostream>using namespace std;long long n, k;//sum = 1 + 2翻译 2017-04-25 11:58:30 · 347 阅读 · 0 评论 -
SDUT 2781 二分练习
二分练习 Time Limit: 1000MS Memory Limit: 65536KB Problem Description 给你一个序列,然后给你m个元素,让你从序列中找出与每个元素最接近的数字输出来,如果有两个就输出两个。Input 多组输入,第一行给你两个数n(0 < n < 10000000),m(0 < m < n),接下来是数列的n个数,然后再输入m个元素,让你找出最翻译 2017-02-23 19:47:44 · 376 阅读 · 0 评论 -
【三分】Gym - 101246J Buoys
Step1 Problem: 给定一个长度为n的序列,要求使得其间距相等,最短的总移动距离。 数据范围: 2<=n<=400, -10000<=数列值<=10000Step2 Involving algorithms: 三分,思维Step3 Ideas: 可以感觉出来一定有一个 序列值 是不动的。 三分枚举间距,间距过长...翻译 2018-04-18 21:54:48 · 210 阅读 · 0 评论