HDU 2055 An easy problem

1426 ワード

An easy problem
Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 17042    Accepted Submission(s): 11448
Problem Description
we define f(A) = 1, f(a) = -1, f(B) = 2, f(b) = -2, ... f(Z) = 26, f(z) = -26;
Give you a letter x and a number y , you should output the result of y+f(x).
 
Input
On the first line, contains a number T.then T lines follow, each line is a case.each case contains a letter and a number.
 
Output
for each case, you should the result of y+f(x) on a line.
 
Sample Input

   
   
   
   
6 R 1 P 2 G 3 r 1 p 2 g 3

 
Sample Output

   
   
   
   
19 18 10 -17 -14 -4

すいもん
</pre><pre name="code" class="cpp">#include <stdio.h>

int fun(char ch)
{
	if(ch>='a' && ch<='z')
		return -(ch-'a'+1);
	else
		return ch-'A'+1;
}

int main()
{
	int T;
	int a;
	char ch;
	scanf("%d%*c",&T);
	while(T--)
	{
		scanf("%c %d",&ch,&a);
		getchar();
		printf("%d
",fun(ch)+a); } return 0; }