士兵杀敌(1)
来源:互联网 发布:枪林弹雨刷枪软件视频 编辑:程序博客网 时间:2024/06/04 19:59
这是一道ACM题。
题目是
南将军手下有N个士兵,分别编号1到N,这些士兵的杀敌数都是已知的。
小工是南将军手下的军师,南将军现在想知道第m号到第n号士兵的总杀敌数,请你帮助小工来回答南将军吧。
注意,南将军可能会问很多次问题。
输入
只有一组测试数据
第一行是两个整数N,M,其中N表示士兵的个数(1<N<1000000),M表示南将军询问的次数(1<M<100000)
随后的一行是N个整数,ai表示第i号士兵杀敌数目。(0<=ai<=100)
随后的M行每行有两个整数m,n,表示南将军想知道第m号到第n号士兵的总杀敌数(1<=m,n<=N)。
输出
对于每一个询问,输出总杀敌数
每个输出占一行
样例输入
5 2
1 2 3 4 5
1 3
2 4
样例输出
6
9
也许有些人看过也许没有
这里只有C语言代码
#include<stdio.h> //这是头文件
#include<stdlib.h>//这是头文件
int main()//主函数
{
int num, que, begin, end, sum, i, *a, *b;
scanf("%d %d",&num, &que);//从键盘输入
a=(int*)malloc((num+1)*sizeof(int));//空间的的申请
b=(int*)malloc((num+1)*sizeof(int));
b[0] = 0;
for(i = 1; i <= num; i++)//for循环
{
scanf("%d", &a[i]);
b[i] = b[i-1] + a[i];
}
while(que--)//用while循环当que=0不再循环
{
scanf("%d %d",&begin, &end);
sum = b[end] - b[begin-1];
printf("%d\n",sum);
}
}
- 士兵杀敌(1)
- C语言(25)士兵杀敌1
- 士兵杀敌 1-5
- 士兵杀敌1
- 士兵杀敌(二)
- 士兵杀敌(一)
- 士兵杀敌(四)
- 士兵杀敌(二)
- 士兵杀敌(四)
- 士兵杀敌(二)
- 士兵杀敌(五)
- 士兵杀敌(一)
- 士兵杀敌(三)
- 士兵杀敌(一)
- 士兵杀敌(二)
- 士兵杀敌(一)
- 士兵杀敌(二)
- 士兵杀敌(一)
- 第二章 2.29
- Longest Substring Without Repeating Characters -- Leetcode Java
- SQL查询前10条记录(SqlServer/mysql/oracle)语法分析
- Oracle MySQL Or NoSQL续
- Linux磁盘和文件系统管理
- 士兵杀敌(1)
- ubuntu镜像作为apt的源
- 101个MySQL的调节和优化技巧
- cpp反汇编之菱形继承
- PD16 Generate Datebase For Sql2008R2时报脚本错误“对象名sysproperties无效”
- cocos2d-x 3.5 RELEASED 探索
- java web 学习思路(牛人如何学JAVA)
- PHP基础学习之数据库操作
- ListView或者RecycleView滚动时隐藏Toolbar( Part 2 )