CodeForces 474B(Worms)
来源:互联网 发布:淘宝买家号权重是什么 编辑:程序博客网 时间:2024/05/21 06:22
此题链接单击这里
=================
这题重写了好几次都是超时,最后用二分法AC。
把超时代码附上
#include <iostream>#include <cstring>#include <cstdio>#include <vector>using namespace std;int main(){ int n, k = 0, i; int sum = 1; scanf("%d", &n); int a[100001]; while (n--) { int m; scanf("%d", &m); for (i = k + 1; i <= k + m; i++) a[i] = sum; sum++; k += m; } int m; scanf("%d", &m); for (int i = 0; i <m; i++) { scanf("%d", &n); cout << a[n] << endl; } return 0;}
AC代码
#include <iostream>#include <cstring>#include <cstdio>#include <vector>using namespace std;int find(int a[],int m,int k){ int i=1; int j=k; while(i<=j) { int mid=(i+j)/2; if(a[mid]==m) return mid; else if(a[mid]>m) j=mid-1; else i=mid+1; } return i;}int main(){ int n,a[100001]; int k=1,sum=0; scanf("%d",&n); while(n--) { int m; scanf("%d",&m); a[k++]=sum+m; sum+=m; } scanf("%d",&n); while(n--) { int q,m; scanf("%d",&m); q=find(a,m,k-1); printf("%d\n",q); }}
有问题联系企鹅791267032
邮箱地址….wutanrong@Hotmail.com
0 0
- [Codeforces] 474B - Worms
- CodeForces 474B(Worms)
- CodeForces 474B Worms 二分
- Codeforces 474B Worms (二分查找)
- Codeforces 474B Worms 二分(水
- 【CODEFORCES】 B. Worms
- CF 474B Worms
- codeforces—— 474B —— Worms
- B. Worms Codeforces Round #271 (div2)
- Codeforces Round #271 (Div. 2)--B.Worms
- B. Worms
- B. Worms
- Codeforces Round #271 (Div. 2) --B Worms (二分)
- Codeforces Round #271 (Div. 2) B Worms 裸的二分查找
- Worms
- 【Codeforces Round 271 (Div 2)B】【前缀和二分 or 暴力】Worms 每种类型多个个数第i个数什么类型
- CF 271 A Keyboard B Worms C Captain Marmot
- HDU4404 Worms
- tmux 常用
- 字符串 和 Unicode字符 的互转
- selenium webdriver学习(八)------------如何操作select下拉框
- selenium+webdriver的学习地址
- codevs1010
- CodeForces 474B(Worms)
- hive安装同时以mysql为元数据库
- KDE 4 仿 Plasma 5 主题
- 网络访问框架XUtils
- Linux驱动基础总结
- 【Ray Tracing from Ground Up】光源(Lights)
- mybatis Example Criteria like 模糊查询
- JavaScript和Java的区别
- swift2 函数