杭电2055--An easy problme

An easy problem

Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 16646    Accepted Submission(s): 11183


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
 
 
Author
8600
 
 
Source
 
 
Recommend
linle   |   We have carefully selected several similar problems for you:   2054  2056  2058  2061  2059 
 
//AC:
 1 #include <stdio.h>
 2 
 3 int deal(char str)
 4 {
 5     if(str>='A' , str<='Z')
 6     return str - 'A' + 1 ;
 7     else
 8     return 'a' - str - 1 ;
 9 }
10 
11 void math()
12 {
13     int num; char str ;
14     scanf("%s %d", &str, &num) ;
15     int temp = deal(str) ;
16     printf("%d\n", temp + num) ;
17 }
18 
19 int main()
20 {
21     int t ;
22     scanf("%d", &t) ;
23     while(t--)
24     {
25         math() ;
26     }    
27     return 0 ;
28 } 

 

你可能感兴趣的:(杭电)