| ||||||||||
| Online Judge | Problem Set | Authors | Online Contests | User | ||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest | |||||||||
Re:1002求教In Reply To:1002求教 Posted by:201030720520 at 2011-10-25 19:13:04
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
import java.io.*;
public class Main {
public static List Arrange = new ArrayList();
public static String changestyle(String str) {
StringBuffer STR = new StringBuffer(str);
STR.insert(3, "-");
return STR.toString();
}
public static void divide(int[] i, ArrayList element, ArrayList amount) {
int competor = i[0];
int counter = 0;
element.add(i[0]);
for (int k = 0; k < i.length; k++) {
if (i[k] == competor) {
counter++;
} else if (i[k] != competor) {
element.add(i[k]);
amount.add(counter);
competor = i[k];
counter = 1;
}
}
if (i[i.length - 1] == i[i.length - 2]) {
amount.add(counter);
} else if (i[i.length - 1] != i[i.length - 2]) {
amount.add(1);
}
}
public static String GetStr(List bFcontainer) {
String Str_Tem = "";
for (int i = 0; i < bFcontainer.size(); i++) {
Str_Tem += bFcontainer.get(i);
}
return Str_Tem;
}
public static String addzero(Object object) {
int i = 0;
int Sum = (Integer) object;
while(Sum != 0) {
Sum = Sum / 10;
i++;
}
String str = "";
for(int k=1; k<=7-i; k++) {
str = str + "0";
}
String SUM = object + "";
String RETURN = str + SUM;
return RETURN;
}
public static void Sort(List<String> list, int[] INTS) {
for (int i = 0; i < list.size(); i++) {
INTS[i] = Integer.parseInt(list.get(i));
}
Arrays.sort(INTS);
}
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
Scanner bf = new Scanner (System.in);
try{
bf.nextLine();
}catch(Exception e) {
System.out.println("null!");
}
if(bf.hasNextLine()) {
while (bf.hasNextLine()) {
List<Character> BFcontainer = new ArrayList<Character>();
String BF = bf.nextLine();
for (int i = 0; i < BF.length(); i++) {
if (BF.charAt(i) != ' ' && BF.charAt(i) != '-') {
BFcontainer.add(BF.charAt(i));
}
}
for (int i = 0; i < BFcontainer.size(); i++) {
if ((Character) BFcontainer.get(i) == 'A'
|| (Character) BFcontainer.get(i) == 'B'
|| (Character) BFcontainer.get(i) == 'C') {
BFcontainer.set(i, '2');
}
if ((Character) BFcontainer.get(i) == 'D'
|| (Character) BFcontainer.get(i) == 'E'
|| (Character) BFcontainer.get(i) == 'F') {
BFcontainer.set(i, '3');
}
if ((Character) BFcontainer.get(i) == 'G'
|| (Character) BFcontainer.get(i) == 'H'
|| (Character) BFcontainer.get(i) == 'I') {
BFcontainer.set(i, '4');
}
if ((Character) BFcontainer.get(i) == 'J'
|| (Character) BFcontainer.get(i) == 'K'
|| (Character) BFcontainer.get(i) == 'L') {
BFcontainer.set(i, '5');
}
if ((Character) BFcontainer.get(i) == 'M'
|| (Character) BFcontainer.get(i) == 'N'
|| (Character) BFcontainer.get(i) == 'O') {
BFcontainer.set(i, '6');
}
if ((Character) BFcontainer.get(i) == 'P'
|| (Character) BFcontainer.get(i) == 'R'
|| (Character) BFcontainer.get(i) == 'S') {
BFcontainer.set(i, '7');
}
if ((Character) BFcontainer.get(i) == 'T'
|| (Character) BFcontainer.get(i) == 'U'
|| (Character) BFcontainer.get(i) == 'V') {
BFcontainer.set(i, '8');
}
if ((Character) BFcontainer.get(i) == 'W'
|| (Character) BFcontainer.get(i) == 'X'
|| (Character) BFcontainer.get(i) == 'Y') {
BFcontainer.set(i, '9');
}
}
list.add(GetStr(BFcontainer));
}
int[] intrs = new int[list.size()];
ArrayList<Integer> amount = new ArrayList<Integer>();
ArrayList<Object> element = new ArrayList<Object>();
Sort(list, intrs);
divide(intrs, element, amount);
for(int i=0; i<element.size(); i++) {
if((Integer)element.get(i) <= 999999) {
element.set(i, addzero( (element.get(i))));
}
else {
element.set(i, element.get(i).toString());
}
}
ArrayList<Object> answer = new ArrayList<Object>();
for (int i = 0; i < element.size(); i++) {
if ((Integer) amount.get(i) != 1) {
answer.add(changestyle((String)element.get(i)) + " "
+ amount.get(i));
}
}
System.out.print(answer.get(0));
for (int i = 1; i < answer.size(); i++) {
System.out.println();
System.out.print(answer.get(i));
}
}
else {
System.out.println("wrong!");
}
}
}
Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator