Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

Re:第一次弄这个练习

Posted by ice_time at 2011-03-16 21:02:12 on Problem 1002
In Reply To:Re:第一次弄这个练习 Posted by:fishing_test at 2009-04-16 20:46:29
> 我写的, 可读性好点, 呵呵
> 
> import java.io.BufferedReader;
> import java.io.InputStreamReader;
> import java.util.ArrayList;
> import java.util.Collections;
> import java.util.Comparator;
> import java.util.HashMap;
> import java.util.List;
> import java.util.Map;
> 
> public class P1002 {
> 
>     private static String convert(String line) {
>         String ret = "";
> 
>         for (int i = 0; i < line.length(); i++) {
>             if (line.charAt(i) >= '0' && line.charAt(i) <= '9') {
>                 ret += line.charAt(i);
>             } else if (line.charAt(i) >= 'A' && line.charAt(i) <= 'Z') {
> 
>                 char c = line.charAt(i);
> 
>                 if (c == 'A' || c == 'B' || c == 'C') {
>                     ret += "2";
>                 } else if (c == 'D' || c == 'E' || c == 'F') {
>                     ret += "3";
>                 } else if (c == 'G' || c == 'H' || c == 'I') {
>                     ret += "4";
>                 } else if (c == 'J' || c == 'K' || c == 'L') {
>                     ret += "5";
>                 } else if (c == 'M' || c == 'N' || c == 'O') {
>                     ret += "6";
>                 } else if (c == 'P' || c == 'R' || c == 'S') {
>                     ret += "7";
>                 } else if (c == 'T' || c == 'U' || c == 'V') {
>                     ret += "8";
>                 } else if (c == 'W' || c == 'Y' || c == 'X') {
>                     ret += "9";
>                 }
>             }
> 
>         }
> 
>         return ret.substring(0, 3) + "-" + ret.substring(3);
>     }
> 
>     public static void main(String[] args) throws Exception {
> 
>         Map<String, Integer> map = new HashMap<String, Integer>();
> 
>         BufferedReader stdin = new BufferedReader(new InputStreamReader(System.in));
> 
>         String line = stdin.readLine();
> 
>         int n = Integer.parseInt(line);
> 
>         for (int i = 0; i < n; i++) {
>             line = stdin.readLine();
> 
>             String result = convert(line);
> 
>             if (map.get(result) == null) {
>                 map.put(result, 1);
>             } else {
>                 int newValue = map.get(result) + 1;
>                 map.put(result, newValue);
>             }
>         }
> 
>         if (map.keySet().size() == n) {
>             System.out.println("No duplicates.");
>         } else {
> 
>             List<Count> list = new ArrayList<Count>();
>             for (Map.Entry<String, Integer> entry : map.entrySet()) {
>                 if (entry.getValue() > 1) {
> 
>                     list.add(new Count(entry.getKey(), entry.getValue()));
>                 }
>             }
> 
>             
>             Collections.sort(list, new Comparator() {
> 
>                 public int compare(Object arg0, Object arg1) {
>                     Count c1 = (Count) arg0;
>                     Count c2 = (Count) arg1;
>                     
>                    return c1.s.compareTo(c2.s);
>                 }
>                 
>             });
>             
>             
>             for (Count c: list) {
>                System.out.println(c.s + " " +  c.number);
>             }
>         }
> 
>     }
> 
>     static class Count {
> 
>         String s;
>         int number;
> 
>         public Count(String s, int number) {
>             this.s = s;
>             this.number = number;
>         }
>     }
> 
> }
> 
> 

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator