当前位置: 首页 > wzjs >正文

重庆建设工程信息网官网加密锁安装驱动关键词首页优化

重庆建设工程信息网官网加密锁安装驱动,关键词首页优化,网站还建设 域名可以备案吗,和龙建设局网站文章目录 整数二分模板模板1:满足条件的第一个数模板2:满足条件的最后一个数 浮点数二分模板一、Building an Aquarium思路分析具体代码 二、Tracking Segments思路分析具体代码 三、Wooden Toy Festival思路分析具体代码 四、路标设置思路分析具体代码 …

文章目录

      • 整数二分模板
          • 模板1:满足条件的第一个数
          • 模板2:满足条件的最后一个数
      • 浮点数二分模板
      • 一、Building an Aquarium
          • 思路分析
          • 具体代码
      • 二、Tracking Segments
          • 思路分析
          • 具体代码
      • 三、Wooden Toy Festival
          • 思路分析
          • 具体代码
      • 四、路标设置
          • 思路分析
          • 具体代码
      • 五、木材加工
          • 思路分析
          • 具体代码

整数二分模板

模板1:满足条件的第一个数
int bianrysearch(int l, int r) {while (l < r) {int mid = l + r >> 1;if (check(mid)) r = mid;else  l = mid + 1;} return l;
}
模板2:满足条件的最后一个数
int bianrysearch(int l, int r) {while (l < r) {int mid = l + r + 1 >> 1;if (check(mid)) l = mid;else  r = mid - 1;}return l;
}

浮点数二分模板

double bianrysearch(double l, double r) {double eps = 1e-6;   while (r - l > eps) {double mid = (l + r) / 2;if (check(mid)) r = mid;else l = mid;}return l;
}

一、Building an Aquarium

Building an Aquarium

思路分析

二分

具体代码
#include <cstdio>
#include <iostream>using namespace std;
typedef long long ll;const int N = 2e5 + 10;
ll t, n, x;
ll a[N];bool check(ll mid) {ll sum = 0;for (int i = 1; i <= n; i++){if (a[i] < mid) sum += mid - a[i];}	return sum <= x;
}int main() {scanf("%lld", &t);while (t--) {scanf("%lld%lld", &n, &x);for (int i = 1; i <= n; i++) {scanf("%lld", &a[i]);}ll l = 1, r = 2e9 + 10;while (l < r) {ll mid = l + r + 1 >> 1;if (check(mid)) l = mid;else r = mid - 1;}printf("%lld\n", l);}return 0;
}

二、Tracking Segments

Tracking Segments

思路分析

二分+前缀和

具体代码
#include <cstdio>
#include <iostream>
#include <cstring>using namespace std;typedef long long ll;const int N = 1e5 + 10;int t, n, m, q;
int s[N], pos[N];
ll preSum[N];struct node{int x, y;
}a[N];bool check(int mid) {for (int i = 1; i <= n; i++) s[i] = 0;for (int i = 1; i <= mid; i++)	s[pos[i]] = 1;for (int i = 1; i <= n; i++) {preSum[i] = preSum[i - 1] + s[i];}for (int i = 1; i <= m; i++) {if (2 * (preSum[a[i].y ] - preSum[a[i].x - 1]) > a[i].y - a[i].x + 1)	return true;}return false;
}int main() {cin >> t;while(t--) {cin >> n >> m;for (int i = 1; i <= m; i++) {cin >> a[i].x >> a[i].y;}cin >> q;for (int i = 1; i <= q; i++) {cin >> pos[i];}if (!check(q)) {puts("-1");continue;}	int l = 1, r = q;while (l < r) {int mid = l + r >> 1;if (check(mid)) r = mid;else l = mid + 1;}cout << l << endl;}return 0;
}

三、Wooden Toy Festival

Wooden Toy Festival

思路分析

二分

具体代码
#include <cstdio>
#include <iostream>
#include <algorithm>using namespace std;const int N = 2e5 + 10;int t, n;
int a[N];bool check(int mid) {int idx = 0, t1 = a[0] + 2 * mid;while (a[idx] <= t1 && idx < n) idx++;t1 = a[idx] + 2 * mid;while (a[idx] <= t1 && idx < n) idx++;t1 = a[idx] + 2 * mid;while (a[idx] <= t1 && idx < n) idx++;if (idx == n) return true;return false;
}int main() {cin >> t;while (t--) {cin >> n;int l = 0, r; for (int i = 0; i < n; i++) {cin >> a[i];}sort(a, a + n);r = a[n - 1];while (l < r) {int mid = l + r >> 1;if (check(mid)) r = mid;else l = mid + 1;}		cout << l << endl;}return 0;
}

四、路标设置

路标设置

思路分析

二分,注意check函数写法

具体代码
#include <cstdio>
#include <iostream>
#include <algorithm>using namespace std;typedef long long ll;const int N = 100000 + 10;
ll len, n, k;
ll a[N];bool check(int mid) {ll dif = 0;for (int i = 1; i < n; i++) {dif += (a[i] - a[i - 1] - 1) / mid;}return dif <= k;
}int main() {cin >> len >> n >> k;ll l = 1, r = len;for(int i = 0; i < n; i++) {cin >> a[i];} sort(a, a + n);while (l < r) {ll mid = l + r >> 1;if (check(mid)) r = mid;else l = mid + 1;}cout << l << endl;return 0;
}

五、木材加工

木材加工

思路分析

二分

具体代码
#include <cstdio>
#include <iostream>using namespace std;typedef long long ll;
const int N = 1e5 + 10;int n, k;
ll a[N];bool check(ll mid) {ll sum = 0;for (int i = 0; i < n; i++) sum += a[i] / mid;	return sum >= k;
}int main() {ll l = 0, r = 0;cin >> n >> k;for (int i = 0; i < n; i++) {scanf("%lld", &a[i]);r += a[i];} while(l < r) {ll mid = l + r + 1 >> 1;if (check(mid)) l = mid; else  r = mid - 1;}cout << l <<endl;return 0;
}
http://www.dtcms.com/wzjs/235119.html

相关文章:

  • 沈阳专业网站建设报价广告宣传网站
  • 广东企业网站建设哪家好seo点击软件排名优化
  • 纺织服装网站建设规划方案优化网站首页
  • 文档下载网站 建设seo试用软件
  • 织梦零基础做网站个人网站模板
  • 家用电脑如何做网站外贸网站优化公司
  • 做3d ppt模板下载网站有哪些东莞seo广告宣传
  • 盗版软件做的网站会被起诉吗营销成功的案例
  • 佛山网站建设宁波seo公司推荐
  • 台前网站建设费用北京网络营销推广培训哪家好
  • 请问做卖东西网站怎么常见的网络营销方法
  • 电商类公司网站应该怎么搭建重庆网络推广外包
  • 怎样优化网站自然排名app开发定制
  • web3普通人从哪里入手seo公司资源
  • 如何给客户做网站方案精准粉丝引流推广
  • 网站建设哪家好nuoweb西安网站建设排名
  • 微网站做下载链接查淘宝关键词排名软件有哪些
  • 阿里网站导航怎么做的线上营销怎么推广
  • 潜江市网站百度seo网络营销书
  • 有口碑的镇江网站优化最有效的推广方式
  • 怎么样创建做零食山楂的网站东莞企业网站模板建站
  • 阿克苏网站建设咨询网络热词
  • 厦门市建设局官方网站推广接单平台哪个好
  • 企业网站建设流程的第一步工作是南宁网站建设及推广
  • 成都网站建设哪个好百度下载软件
  • 网站站长如何赚钱百度品牌
  • 做网站开始要注意什么矿坛器材友情交换
  • 广州朝阳网站建设seo排名点击器曝光行者seo
  • 毛绒玩具东莞网站建设企业品牌策划
  • 高端网站开发找哪家好百度云网盘资源链接