洛谷p1918保龄球
来源:互联网 发布:软件企业投标资质 编辑:程序博客网 时间:2024/05/13 16:25
原题
题目要求找到对应的值,数据范围在10^5内,因此不能循环枚举每一个值判断。
那么就需要一个高效的算法,根据所求在数组内查找相同值,可以使用stl库里的set查询,也可以二分
二分的话要把数据排序,但要对应输出未排序的下标,所以需要用struct来储存一个mark为未排序的下标
#include<iostream>#include<iomanip>#include<cstdio>#include<cstring>#include<cmath>#include<algorithm> using namespace std;int n; int k=0;struct node{ int mark,ball;}a[100001];int cmp(node x,node y){ return x.ball<y.ball;}int erfen(int l,int r){ while(l<=r) { int mid=(l+r)/2; if(k>a[mid].ball) l=mid+1; else r=mid-1; } if(a[l].ball==k) cout<<a[l].mark<<endl; else cout<<"0"<<endl;}int main(){ cin>>n; for(int i=1;i<=n;++i) { cin>>a[i].ball; a[i].mark=i; } sort(a+1,a+n+1,cmp); int q;cin>>q; for(int i=1;i<=q;++i) { k=0; cin>>k; erfen(1,n); } return 0;}
阅读全文
0 0
- 洛谷p1918保龄球
- P1918 保龄球 (简单二分)
- 保龄球
- |洛谷|贪心|P1413 坚果保龄球
- 再见,保龄球
- 保龄球得分
- 保龄球效应
- 深圳保龄球大全
- 打保龄球问题
- 打保龄球(normal)
- 保龄球娱乐计分
- 保龄球的启示
- 保龄球的启示
- 【保龄球】解题报告
- TDD练习:保龄球计分
- 保龄球-----计分程序
- 保龄球规则计分
- bzoj 3877: [Ahoi2014]保龄球
- effective C++条款三十二
- python pydub用法(1)
- 48张帮助程序员梳理知识框架结构图谱
- (CodeForces
- C\C++程序员面试总结
- 洛谷p1918保龄球
- springMVC之ModelAttribute
- BZOJ2878: [Noi2012]迷失游乐园
- 程序员成长历程的四个阶段
- 编译链接--读书笔记1
- ovs和连接控制器floodlight
- Virtualization-Cpu/Memory/IO虚拟化详解
- 文件的inode数据
- 面向对象笔记2 原型链 解释