0
点赞
收藏
分享

微信扫一扫

HDOJ 2055 An easy problem

书呆鱼 2022-05-14 阅读 69


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

题意: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)..

import java.util.Scanner;

public class Main {

public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String lowerCase = "0abcdefghijklmnopqrstuvwxyz";
String capital = "1ABCDEFGHIJKLMNOPQRSTUVWXYZ";
int n =sc.nextInt();
//sc.next();
while(n-->0){
String strs = sc.next();
//System.out.println(strs);
int y = sc.nextInt();
char x = strs.charAt(0);
//strs = strs.substring(2);
//int y = Integer.parseInt(strs,10);

//System.out.println(x);
//System.out.println(y);
int g=0,h=0;
for(int i=1;i<lowerCase.length();i++){
if(x==lowerCase.charAt(i)){
g=-i;
break;
}
}
for(int i=1;i<capital.length();i++){
if(x==capital.charAt(i)){
h=i;
break;
}
}
System.out.println(y+g+h);

}

}

}



举报

相关推荐

0 条评论