
二分算法
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 · 216 阅读 · 0 评论 -
Sagheer and Nubian Market 812c [二分枚举]
题目大意: 给你n个物品,还有m钱 每个物品的价值为k【i】; 请你用不超过m钱买最多个物品,有多少个 ,花了多少钱? 每个物品的价格为该物品的价格k【i】+ (该物品的下标+1)* 买的物品个数 思路 :简单的二分枚举 一开始就想到要开longlong 不过在cf输入输出c++不能交%lld 新手的我实在不知道该怎么办只能按照他的提示改为定义int64 改为%I64d AC...原创 2018-04-16 22:14:20 · 213 阅读 · 0 评论 -
codeforces 165B - Burning Midnight Oil codeforces 【二分+快速幂】
#include<bits/stdc++.h> #define ll long long using 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 · 160 阅读 · 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 · 312 阅读 · 0 评论 -
2019牛客暑期多校训练营(第七场)E Governing sand【树状数组+离散化】【二分】
题意: 给你 x1, x2, y1, y2, a1, a2, b1, b2, c1, c2, m1, m2; 推导出接下来的每一项x和y Xi = (a1 * Xi-1 + b1 * Xi-2+ c1) % m1 Yi = (a2 * Yi-1 + b2 * Yi-2+ c2) % m2 Ri = max(Xi, Yi) Li = min(Xi, Yi) ...原创 2019-08-09 15:39:20 · 358 阅读 · 0 评论 -
POJ1743 Musical Theme【二分】【后缀数组】
题意 有N(1 <= N <=20000)个音符的序列来表示一首乐曲,每个音符都是1…88范围内的整数,现在要找一个重复的主题。 “主题”是整个音符序列的一个子串,它需要满足如下条件: 1.长度至少为5个音符 2.在乐曲中重复出现(可能经过转调,“转调”的意思是主题序列中每个音符都被加上或减去了同一个整数值。) 3.重复出现的同一主题不能有公共部分。 思路 后缀数组入门题目 先转化成相...原创 2019-08-24 16:59:01 · 162 阅读 · 0 评论 -
POJ3261 Milk Patterns【二分】【后缀数组】
题意 给你n个数字 找至少出现t次的最长可重复子串 保证一定有答案 思路 继续刷后缀数组模板题 先二分答案,然后将后缀分成若干组。判断的是有没有一个组的后缀个数不小于t height数组真好 AC_code: #include<iostream> #include<algorithm> #include<cstring> #include<cstdio&g...原创 2019-08-24 17:38:23 · 131 阅读 · 0 评论