测试输入包含若干测试用例,每个测试用例占一行,格式为"A + B =",相邻两字符串有一个空格间隔.当A和B同时为0时输入结束,相应的结果不要输出.
对每个测试用例输出1行,即A+B的值.
one + two = three four + five six = zero seven + eight nine = zero + zero =
3 90 96
import java.util.HashMap;
import java.util.Map;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()) {
String string = scanner.nextLine();
String[] strs = string.split(" ");
if (strs[0].equals("zero") && strs[1].equals("+") && strs[2].equals("zero") && strs[3].equals("=")) {
break;
}
Map<String, Integer> myMap = new HashMap<String, Integer>();
myMap.put("one",1 );
myMap.put("two",2 );
myMap.put("three", 3);
myMap.put("four", 4);
myMap.put("five", 5);
myMap.put("six", 6);
myMap.put("seven",7 );
myMap.put("eight", 8);
myMap.put("nine", 9);
myMap.put("ten", 10);
myMap.put("zero", 0 );
int indexAnd = 0;
int indexEqual = 0;
for (int i = 0; i < strs.length; i++) {
if (strs[i].equals("+")) {
indexAnd = i;
}if (strs[i].equals("=") ) {
indexEqual = i;
}
}
String str1 = "";
for (int i = 0; i < indexAnd; i++) {
str1 += Integer.toString(myMap.get(strs[i])) ;
}
int a1 = Integer.parseInt(str1);
String str2 = "";
for (int i = indexAnd + 1; i < indexEqual; i++) {
str2 += Integer.toString(myMap.get(strs[i]));
}
int a2 = Integer.parseInt(str2);
System.out.println(a1+a2);
}
}
} import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while (scanner.hasNext()){
String line = scanner.nextLine();
String s = line.replace("zero", "0")
.replace("one", "1")
.replace("two", "2")
.replace("three", "3")
.replace("four", "4")
.replace("five", "5")
.replace("six", "6")
.replace("seven", "7")
.replace("eight", "8")
.replace("nine", "9")
.replace(" ", "")
.replace("=", "");
String[] ss = s.split("\\+");
System.out.println(Integer.parseInt(ss[0])+Integer.parseInt(ss[1]));
}
}
}