CF 474B Worms
2015-08-02 13:56
369 查看
二分查找
#include <iostream> #include <cstdio> using namespace std; const int maxn = 1e5 + 100; int len[maxn]; int up[maxn]; int n,m; int bin_search(int x) { int l = 1,r = n; if(x >= up[r]) return r; else { int mid; while(l <= r) { mid = (l+r)/2; if(x > up[mid]) l = mid + 1; else if(x < up[mid]) r = mid - 1; else return mid; } return l; } } int main() { while(~scanf("%d",&n)) { up[0] = 0; for(int i = 1;i <= n;i ++) { scanf("%d",&len[i]); up[i] = up[i-1] + len[i]; } scanf("%d",&m); int w; for(int i = 0;i < m;i ++) { scanf("%d",&w); printf("%d\n",bin_search(w)); } } return 0; }
相关文章推荐
- 如何设计一个内存分配器
- JMX简介
- 26. Location assign() 方法
- Vim初级:配置和使用
- 字符串操作
- 【LeetCode】242 - Valid Anagram
- 报错:LINK : fatal error LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
- Java基础-封装
- JSP和Servlet中的页面跳转和重定向辨析
- codeforces 566F F. Clique in the Divisibility Graph(dp)
- java---设计模式之单例模式
- QT模块简介
- HDU1285确定比赛名次 + 拓扑排序
- hdu 5334 Virtual Participation 构造
- Arch Linux 安装小记
- 搜索引擎搭建:heritrix+lucene
- afx_msg消息响应返回值LRESULT char*在多字节字符集下面就可以转换为CString
- python中的for循环
- linux切换文本-图形模式
- hadoop入门:2.Hadoop-1.12伪分布环境搭建