ACM —— 1013 Counterfeit Dollar

来源:互联网 发布:犀牛软件破解安装 编辑:程序博客网 时间:2024/05/12 07:10

解题代码:

import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner stdin = new Scanner(System.in);int num = stdin.nextInt();boolean[] flag;int[] time;for (int i = 0; i < num; i++) {flag = new boolean[12];time = new int[12];String[] left = new String[3];String[] right = new String[3];String[] status = new String[3];for (int j = 0; j < 3; j++) {left[j] = stdin.next();right[j] = stdin.next();status[j] = stdin.next();switch (status[j].charAt(0)) {case 'e':for (int l = 0; l < left[j].length(); l++) {flag[left[j].charAt(l) - 'A'] = true;flag[right[j].charAt(l) - 'A'] = true;}break;case 'u':for (int l = 0; l < left[j].length(); l++) {time[left[j].charAt(l) - 'A']++;time[right[j].charAt(l) - 'A']--;}break;case 'd':for (int l = 0; l < left[j].length(); l++) {time[left[j].charAt(l) - 'A']--;time[right[j].charAt(l) - 'A']++;}break;}}int max = 0;char result = ' ';for (char c = 'A'; c <= 'L'; c++) {if (flag[c - 'A']) {continue;}if (max < Math.abs(time[c - 'A'])) {max = Math.abs(time[c - 'A']);result = c;}}System.out.printf("%c is the counterfeit coin and it is ", result);if (time[result - 'A'] < 0) {System.out.println("light.");} else {System.out.println("heavy.");}}}}


给每个字母附上状态flag,time;

0 0
原创粉丝点击