Problem J: 小火山的計算能力ZZULIOJ

Problem J: 小火山的計算能力

Time Limit: 1 Sec  Memory Limit: 128 MB
Submit: 468  Solved: 120

SubmitStatusWeb Board

Description

別人說小火山的計算能力不行,小火山很生氣,於是他想證明自己,現在有一個表達式,他想計算出來。

Input

首先是一個t(1<=20)表示測試組數。然後一個表達式,表達式長度不超過200,只有加法和減法,並且保證第一個字符不會是運算符號,最終結果小於2^63-1。

Output

輸出運算結果。

Sample Input

21+12+1-1

Sample Output

22

HINT

#include<stdio.h>//j
#include<string.h>
#include<algorithm>
using namespace std;
char shu[1000],s[1000];
long long  sum,a[1000],n,i,j,k;
int main()
{
	int t;
	scanf("%d",&t);
	while(t--)
	{
		k=0;
		sum=0;
		memset(a,0,sizeof(a));
		s[0]='+';
		scanf("%s",shu);
		n=strlen(shu);
		a[0]=shu[0]-'0';
		for(i=1;i<n;i++)
		{
			if(shu[i]>='0'&&shu[i]<='9')
				a[k]=a[k]*10+(shu[i]-'0');
			else
			{
				k=k+1;
				s[k]=shu[i];
			}	
		}
		for(int i=0;i<=k;i++)
		{
			if(s[i]=='+')
				sum+=a[i];
			else
				sum-=a[i];
		}	
		printf("%lld\n",sum);
	}	
	return 0;
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章