日期:2014-05-20 浏览次数:20818 次
import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Scanner; public class Main_1002 { public static char map(char Char) { switch(Char) { case 'A': case 'B': case 'C': return '2'; case 'D': case 'E': case 'F': return '3'; case 'G': case 'H': case 'I': return '4'; case 'J': case 'K': case 'L': return '5'; case 'M': case 'N': case 'O': return '6'; case 'P': case 'R': case 'S': return '7'; case 'T': case 'U': case 'V': return '8'; case 'W': case 'X': case 'Y': return '9'; case '-': return ' '; default : return Char; } } public static String convert(String num) { char[] NUM = num.toCharArray(); int length = NUM.length; List<Character> numbers = new ArrayList<Character>(); char digit; for(int i = 0; i < length; i++) { digit = map(NUM[i]); if(digit != ' ') numbers.add(digit); } num = ""; for(int i = 0; i < numbers.size(); i++) { num += numbers.get(i); if(i == 2) num += "-"; } return num; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); ArrayList<String> list = new ArrayList<String>(); Map<String, Integer> map = new HashMap<String, Integer>(); String num = null; int freq; int n = sc.nextInt(); for(int i = 0; i < n ; i++) { num = convert(sc.next()); if(!list.contains(num)) list.add(num); freq = map.get(num) == null ? 0 : map.get(num); map.put(num, freq == 0 ? 1 : ++freq); } Collections.sort(list); boolean flag = false; for(int i = 0; i < list.size(); i++) { num = list.get(i); freq = map.get(num); if(freq != 1) { if(flag == false) System.out.print(num + " " + freq); else System.out.print("\n" + num + " " + freq); flag = true; } } if(flag == false) System.out.print("No duplicates."); } }