目录

  • 数的范围
  • 数的三次方根
  • 最佳牛围栏
  • 特殊排序

数的范围

#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
const int N=1e5+10;
int a[N],n,m,x;
int main(void)
{cin>>n>>m;for(int i=0;i<n;i++) cin>>a[i];while(m--){cin>>x;int l=0,r=n-1;while(l<r){int mid=l+r>>1;if(a[mid]>=x) r=mid;else l=mid+1;}if(a[l]==x) cout<<l<<" ";else cout<<-1<<" ";l=0,r=n-1;while(l<r){int mid=l+r+1>>1;if(a[mid]<=x) l=mid;else r=mid-1;}if(a[l]==x) cout<<l<<endl;else cout<<-1<<endl;}return 0;
}

数的三次方根

#include<cstdio>
#include<iostream>
using namespace std;
double n;
bool check(double x)
{if(x*x*x<=n) return true;else return false;
}
int main(void)
{cin>>n;double l=-100,r=100;while(r-l>=1e-8){double mid=(l+r)/2;if(check(mid)) l=mid;else r=mid;}printf("%.6lf\n",l);return 0;
}

最佳牛围栏

#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
const int N=1e5+10;
int a[N];
double sum[N],n,m;
bool check(double avg)
{for(int i=1;i<=n;i++) sum[i]=sum[i-1]+a[i]-avg;double mina=99999;for(int i=0,j=m;j<=n;j++,i++){mina=min(mina,sum[i]);if(sum[j]>=mina) return true;}return false;
}
int main(void)
{cin>>n>>m;for(int i=1;i<=n;i++) cin>>a[i];double l=1,r=2000;while(r-l>1e-7){double mid=(l+r)/2;if(check(mid)) l=mid;else r=mid;}printf("%d\n",int(r*1000));return 0;
}

特殊排序

// Forward declaration of compare API.
// bool compare(int a, int b);
// return bool means whether a is less than b.class Solution {public:vector<int> specialSort(int N) {vector<int> res; res.push_back(1);for(int i=2;i<=N;i++){int l=0,r=res.size()-1;while(l<r){int mid=l+r+1>>1;if(compare(res[mid],i)) l=mid;else r=mid-1;}res.push_back(i);for(int j=res.size()-2;j>r;j--) swap(res[j],res[j+1]);if(compare(i,res[r])) swap(res[r],res[r+1]);}return res;}
};

【AC Saber】二分相关推荐

  1. 【AC Saber】数据结构

    目录 单链表 双链表 栈 队列 单调栈 单调队列 KMP 单链表 #include<cstdio> #include<iostream> using namespace std ...

  2. 【AC Saber】离散化

    目录 离散化 离散化 #include<cstdio> #include<iostream> #include<algorithm> #include<map ...

  3. 【AC Saber】二进制

    目录 二进制中1的个数 64位整数乘法 二进制中1的个数 #include<cstdio> #include<iostream> using namespace std; in ...

  4. 【AC Saber】双指针

    目录 最长连续不重复子序列 数组元素的目标和 判断子序列 最长连续不重复子序列 #include<cstdio> #include<iostream> #include< ...

  5. 【AC Saber】高精度

    目录 高精度加法 高精度减法 高精度乘法 高精度除法 高精度加法 #include<cstdio> #include<iostream> #include<cstring ...

  6. 【AC Saber】归并排序

    目录 归并排序 逆序对的数量 超快速排序 归并排序 #include<cstdio> #include<iostream> #include<algorithm> ...

  7. hdu 2243(poj2778的加强版!(AC自动机+矩阵))

    问你长度为1~N的串中包含了模式串的串总共有几个(先求出总共小于L的单词数(26^1+26^2+26^3+...26^L)..然后再减去不包括所给字符串的单词) 答案要模2^64,直接用unsinge ...

  8. 【codevs3119】高精度开根号(二分答案)

    problem 高精度开根号 输入一个数 求平方根 solution 二分答案,如果mid*mid>原数就去找更小的,反之找更大的. 精度小于二忽略不计? 用到高精加,高精乘,加低精,除低精,比 ...

  9. P2617 Dynamic Rankings 动态区间第K大【树套树】或【整体二分】

    传送门 动态区间第KKK大问题,单点修改(这里是第kkk小,即是从小到大第kkk个) 这里还有个区间修改,有点类似的 P3332 [ZJOI2013]K大数查询 分析 树套树 树套树,就是用一种树形结 ...

最新文章

  1. python爬虫鼠标模拟悬停并点击
  2. 网页3D效果库Three.js学习[二]-了解照相机
  3. Scrapy爬虫框架命令行操作
  4. (转)Linux:使用libgen.h:basename,dirname
  5. python中异常和错误是一个概念_Python的异常概念介绍以及处理
  6. b+树的增删改查_考研计算机 | 如何理解m阶B树?
  7. pytorch---pack_padded_sequence()与pad_packed_sequence()
  8. 自己搭建Maven项目下运行项目后Eclipse报错:org.springframework.web.context.ContextLoaderListener
  9. Linux系统编程---消息队列
  10. 开虚拟机服务器cpu百分之百应该管,为何我在虚拟机里开游戏CPU使用率90--100
  11. win10安装steam有损计算机,win10系统steam安装更新失败的解决方法
  12. 运行python.exe文件出现AttributeError: module ‘moviepy.audio.fx.all‘ has no attribute ‘audio_fadein‘
  13. 路由协议 RIP、IGRP、OSPF和EIGRP 的对比
  14. 判断设备访问类型是PC端还是WAP端
  15. HTML在线颜色选择器源码
  16. QMediaplayer详解以及简易音乐播放实现
  17. 软考是什么?考哪个科目容易过?
  18. 微信回应转错帐被拉黑事件 支付宝:我们比较蠢 没法那么洒脱
  19. 相似度:多边视角:2017:Bilateral Multi-Perspective Matching for Natural Language Sentences
  20. IDEA版本的Mybatis逆向工程使用攻略

热门文章

  1. Arcface demo
  2. Gluon.vision的几类数据集
  3. 关于XML文档操作类
  4. javascript:void到底是个什么?
  5. 60行代码俄罗斯方块
  6. Android应用开发的一些规则
  7. stm32 USART接收总线空闲中断--USART_IT_IDLE
  8. python——xpath
  9. C++ Primer 5th笔记(chap 18 大型程序工具)多重继承下的类作用域
  10. 智能合约重构社会契约(10)超级账本之跨链Hyperledger Lab