![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
二分算法
anthony1314
退役acmer 想要找到后端实习的菜鸡
展开
-
【模板】二分算法 + 快速幂 + 快排
二分算法版本一将区间[l, r]划分成[l, mid]和[mid + 1, r]int bsearch_1(int l, int r){ while (l < r) { int mid = l + r >> 1; if (check(mid)) r = mid; else l = mid + 1; }...原创 2020-03-19 18:43:12 · 188 阅读 · 0 评论 -
Sagheer and Nubian Market 812c [二分枚举]
题目大意:给你n个物品,还有m钱每个物品的价值为k【i】;请你用不超过m钱买最多个物品,有多少个 ,花了多少钱?每个物品的价格为该物品的价格k【i】+ (该物品的下标+1)* 买的物品个数思路 :简单的二分枚举一开始就想到要开longlong不过在cf输入输出c++不能交%lld 新手的我实在不知道该怎么办只能按照他的提示改为定义int64改为%I64dAC...原创 2018-04-16 22:14:20 · 157 阅读 · 0 评论 -
codeforces 165B - Burning Midnight Oil codeforces 【二分+快速幂】
#include<bits/stdc++.h>#define ll long longusing namespace std;ll powp(int k, int l){//快速幂 ll i, j, sum = 1; for(i = 1; i <= l; i++) { sum*=k; } return sum;}int cheak(int m, int k...原创 2018-05-11 22:38:38 · 136 阅读 · 0 评论 -
codeforces 1119D Frets On Fire【预处理 + 二分】
题意:给你一个长度为n的数组 0< n < 100000每个数的大小为0~10^18现在有q次查询每次给你l r意思为数组每个数每次加上同一个数字 得到一个新的数组 加的数字从l到r请问这些数组中不同数字的个数为多少题解:这道题难度在暴力会tle,因为查询太多次我们可以先预处理将输入的数字先排序,处理得出相邻的数的差,再讲差值进行排序,二分找...原创 2019-04-09 14:01:52 · 257 阅读 · 0 评论 -
2019牛客暑期多校训练营(第七场)E Governing sand【树状数组+离散化】【二分】
题意:给你x1, x2, y1, y2, a1, a2, b1, b2, c1, c2, m1, m2;推导出接下来的每一项x和yXi = (a1 * Xi-1 + b1 * Xi-2+ c1) % m1Yi = (a2 * Yi-1 + b2 * Yi-2+ c2) % m2Ri = max(Xi, Yi)Li = min(Xi, Yi)...原创 2019-08-09 15:39:20 · 300 阅读 · 0 评论 -
POJ1743 Musical Theme【二分】【后缀数组】
题意有N(1 <= N <=20000)个音符的序列来表示一首乐曲,每个音符都是1…88范围内的整数,现在要找一个重复的主题。“主题”是整个音符序列的一个子串,它需要满足如下条件:1.长度至少为5个音符2.在乐曲中重复出现(可能经过转调,“转调”的意思是主题序列中每个音符都被加上或减去了同一个整数值。)3.重复出现的同一主题不能有公共部分。思路后缀数组入门题目先转化成相...原创 2019-08-24 16:59:01 · 122 阅读 · 0 评论 -
POJ3261 Milk Patterns【二分】【后缀数组】
题意给你n个数字 找至少出现t次的最长可重复子串保证一定有答案思路继续刷后缀数组模板题先二分答案,然后将后缀分成若干组。判断的是有没有一个组的后缀个数不小于theight数组真好AC_code:#include<iostream>#include<algorithm>#include<cstring>#include<cstdio&g...原创 2019-08-24 17:38:23 · 102 阅读 · 0 评论