程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> NYOJ-士兵殺敵(一)

NYOJ-士兵殺敵(一)

編輯:C++入門知識

NYOJ-士兵殺敵(一)


士兵殺敵(一)

時間限制:1000 ms | 內存限制:65535 KB 難度:3
描述

南將軍手下有N個士兵,分別編號1到N,這些士兵的殺敵數都是已知的。

小工是南將軍手下的軍師,南將軍現在想知道第m號到第n號士兵的總殺敵數,請你幫助小工來回答南將軍吧。

注意,南將軍可能會問很多次問題。

輸入
只有一組測試數據
第一行是兩個整數N,M,其中N表示士兵的個數(1 隨後的一行是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
代碼:
#include
int a[1000000];
int main()
{
	int N,M,i,t,m,n;
	scanf("%d%d",&N,&M);
	for(i=1;i<=N;++i)
	{
		scanf("%d",&t);
		a[i]=a[i-1]+t;  //a[i]存放的是第 1 號至第 i-1 號士兵的總殺敵數
	}
	for(i=1;i<=M;++i)
	{
		scanf("%d%d",&m,&n);
		printf("%d\n",a[n]-a[m-1]);
	}
	return 0;
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved