P1597题目链接
我不会Pascal,那就当成字符串做吧 (本来就是嘛) 。
全是赋值语句,但有的是直接赋值有的是间接赋值,我们可以把这玩意分开处理。
还是老方法,split()就可以啦。
用switch进行判断就行,switch就是干净利落,咯咯咯。
本题直接别强转什么int最省事,只是别忘了赋初值是"0"而不是"",这个挺重要哒。
a、b、c就设置成static的就好啦,改着也顺手呢。
import java.util.Scanner;
public class Main {
private static String a = "0", b = "0", c = "0";
private static void judgeHead(String head, String rear) {
switch (head) {
case "a":
a = judgeRear(rear);
break;
case "b":
b = judgeRear(rear);
break;
case "c":
c = judgeRear(rear);
break;
}
}
private static String judgeRear(String rear) {
switch (rear) {
case "a":
return a;
case "b":
return b;
case "c":
return c;
default:
return rear;
}
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String[] array = scanner.nextLine().split(";");
scanner.close();
for (int i = 0; i < array.length; i++) {
String[] temp = array[i].split(":=");
judgeHead(temp[0], temp[1]);
}
System.out.println(a + " " + b + " " + c);
}
}