`
iluoxuan
  • 浏览: 572222 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

map的应用,统计电话

 
阅读更多

 

package beida.acm;

import java.io.BufferedInputStream;
import java.io.DataInputStream;
import java.io.IOException;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;

public class Phonenum {
	 public static char getNum(char c) {   
	        if (Character.isDigit(c)) {   
	            return c;   
	        }   
	        if (c == 'A' || c == 'B' || c == 'C') {   
	            return '2';   
	        }   
	        if (c == 'D' || c == 'E' || c == 'F') {   
	            return '3';   
	        }   
	        if (c == 'G' || c == 'H' || c == 'I') {   
	            return '4';   
	        }   
	        if (c == 'J' || c == 'K' || c == 'L') {   
	            return '5';   
	        }   
	        if (c == 'M' || c == 'N' || c == 'O') {   
	            return '6';   
	        }   
	        if (c == 'P' || c == 'R' || c == 'S') {   
	            return '7';   
	        }   
	        if (c == 'T' || c == 'U' || c == 'V') {   
	            return '8';   
	        }   
	        if (c == 'W' || c == 'X' || c == 'Y') {   
	            return '9';   
	        }   
	        return '#';   
	    }   

	public static void main(String[] args) throws NumberFormatException, IOException {
		 
		DataInputStream scan = new DataInputStream(new BufferedInputStream(System.in));   
        Map< String, Integer> tm = new TreeMap();   
        int n = Integer.parseInt(scan.readLine().trim());
        for (int i = 0; i < n; i++) {   
            String s = scan.readLine().replace("-", "");
		
            StringBuilder sb = new StringBuilder();   
            for (int k = 0; k < s.length(); k++) {   
                char c = getNum(s.charAt(k));   
                if (Character.isDigit(c)) {   
                	System.out.print(c);
                	
                    sb.append(c);     
                }  
               
            }   
            System.out.println("-------");
            String result = sb.toString().substring(0, 3) + '-' + sb.toString().substring(3);   
            if (tm.containsKey(result)) {   
                int count = tm.get(result) + 1;   
                tm.put(result, count);   
            } else {   
                tm.put(result, 1);   
            }   
        }   
        Set se = tm.keySet();   
        Iterator it = se.iterator();   
        boolean flag = false;   
        while (it.hasNext()) {   
            String s = it.next().toString();   
            int count = tm.get(s);   
            if (count > 1) {   
                flag = true;   
                System.out.println(s + " " + count);   
            }   
        }   
        if (!flag) {   
            System.out.println("No duplicates. ");   
        }   
   
}
}

 输入:12

4873279
ITS-EASY
888-4567
3-10-10-10
888-GLOP
TUT-GLOP
967-11-11
310-GINO
F101010
888-1200
-4-8-7-3-2-7-9-
487-3279

 

分享到:
评论

相关推荐

    2009.6.19—30举办3S研讨会暨Google Earth与Google Map等仿真建模与共享及ARCGIS与遥感高级程序员培训班

    关于举办2009’CHINA3S’3S技术一体化应用研讨会暨遥感与GIS制图、Google Earth与Google Map等虚拟三维仿真建模与共享软件应用开发及ARCGIS与遥感分析操作应用高级程序员学习班的最新通知 (2009.6.19—30) Google...

    实用语音识别基础

    实用语音识别基础--21世纪高等院校技术优秀教材 ... 2 基于信道补偿的电话语音识别  13. 5 小结  参考文献  第四部分语音识别应用  第14章 说话人识别  14. 1 概述  14. 2 说话人识别的...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    实例059 Map映射集合实现省市级联选择框 73 第4章 字符串处理技术 75 4.1 格式化字符串 76 实例060 把数字格式化为货币字符串 76 实例061 格式化当前日期 77 实例062 货币金额大写格式 78 实例063 String类格式化...

    ASP EXCEL导入SQL

     文件服务器与应用服务器是分布式的,通过Map-Reduce进行任务的拆分与结果的合并,充分利用多台服务器的并行计算能力,提升整体平台的运行性能;  文件缓存采用多级缓存策略,解决命中率高的文件的频繁请求。而...

    语音识别技术文章.rar

    13.4.2 基于信道补偿的电话语音识别 13.5 小结 参考文献 第四部分语音识别应用 第14章 说话人识别 14.1 概述 14.2 说话人识别的基本原理 14.2.1 说话人识别系统的典型结构 14.2.2 技术原理 14.3 说话人...

    实用语音识别基础电子版

    实用语音识别基础--21世纪高等院校技术优秀教材 ... 2 基于信道补偿的电话语音识别  13. 5 小结  参考文献  第四部分语音识别应用  第14章 说话人识别  14. 1 概述  14. 2 说话人识别...

    Java范例开发大全 (源程序)

     实例129 统计指定文件中的字符个数 183  实例130 对象的序列化与反序列化 185  实例131 同时显示多个文件 187  实例132 生成zip压缩文件 189  实例133 解压缩zip文件 192  实例134 生成Excel文件 194 ...

    java范例开发大全(pdf&源码)

    实例129 统计指定文件中的字符个数 183 实例130 对象的序列化与反序列化 185 实例131 同时显示多个文件 187 实例132 生成zip压缩文件 189 实例133 解压缩zip文件 192 实例134 生成Excel文件 194 实例135 读取Excel...

    java范例开发大全源代码

     实例129 统计指定文件中的字符个数 183  实例130 对象的序列化与反序列化 185  实例131 同时显示多个文件 187  实例132 生成zip压缩文件 189  实例133 解压缩zip文件 192  实例134 生成Excel文件 ...

    java范例开发大全

    实例129 统计指定文件中的字符个数 183 实例130 对象的序列化与反序列化 185 实例131 同时显示多个文件 187 实例132 生成zip压缩文件 189 实例133 解压缩zip文件 192 实例134 生成Excel文件 194 实例135 读取Excel...

    Java范例开发大全(全书源程序)

    实例129 统计指定文件中的字符个数 183 实例130 对象的序列化与反序列化 185 实例131 同时显示多个文件 187 实例132 生成zip压缩文件 189 实例133 解压缩zip文件 192 实例134 生成Excel文件 194 实例135 读取...

    最新Java面试宝典pdf版

    19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 90 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序...

    Java面试宝典2010版

    10、在weblogic管理制台中对一个应用域(或者说是一个网站,Domain)进行jms及ejb或连接池等相关信息进行配置后,实际保存在什么文件中? 11、说说weblogic中一个Domain的缺省目录结构?比如要将一个简单的helloWorld.jsp...

    java jdk实列宝典 光盘源代码

    15 applet java可以编写两类程序,applications和applet,applications可以在控制台直接运行,与其他高级编程语言没有太大区别,而java的特色在于它具有编制小应用程序的功能,applet可以在internet上传输并在兼容...

    Java面试笔试资料大全

    19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 90 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序...

    Java面试宝典-经典

    19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 90 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序...

    JAVA面试宝典2010

    19、我们在web应用开发过程中经常遇到输出某种编码的字符,如iso8859-1等,如何输出一个某种编码的字符串? 90 20.现在输入n个数字,以逗号,分开;然后可选择升或者降序排序;按提交键就在另一页面显示按什么排序...

Global site tag (gtag.js) - Google Analytics