
思路:
使用哈希表。
获得输入之后,挨个检查字符。只要不是/n换行符,就继续进行:
字符是否是ASCII码范围,0-127包括0,127。若是,则查看哈希表中有无该字符,若有则不做动作,若无则计数+1。
若不是范围,也不做动作。
1 import java.io.BufferedReader; 2 import java.io.IOException; 3 import java.io.InputStreamReader; 4 import java.util.*; 5 6 7 public class Main { 8 public static void main(String[] args) throws IOException { 9 int num = 0;//计数 10 String line = "";//输入行 11 12 13 BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 14 Map<Character,Integer> ages = new HashMap<Character,Integer>(); 15 16 line = br.readLine(); 17 //System.out.println(line); 18 for(int i = 0;i<line.length();i++){ 19 Character str = line.charAt(i);//取得单个字符 20 if(Integer.valueOf(str)>=0&&Integer.valueOf(str)<=127){//字符在ASCII范围 21 //System.out.println(Integer.valueOf(str)); 22 if(!ages.containsKey(str)){//存在不做动作,不存在就计数 23 //System.out.println(num); 24 num = num+1; 25 ages.put(str,i);//将未存在的放入哈希表 26 } 27 } 28 } 29 System.out.println(num); 30 31 } 32 }
谷歌:
1.char转ascii码值
Character.valueOf(str);
分类:
牛客
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix