15+曲文辉


私信TA

用户名:BoyHonest

访问量:35418

签 名:

等  级
排  名 302
经  验 5593
参赛次数 3
文章发表 52
年  龄 0
在职情况 学生
学  校 河南农业大学
专  业

  自我简介:


import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;
import java.util.StringTokenizer;

import javax.print.attribute.SetOfIntegerSyntax;

public class Main
{

	public static void main(String[] args)
	{
		Scanner input = new Scanner (System.in);
		String str = input.nextLine();
		if (!str.contains(" ")) // 特殊情况, 不考虑答案错误;
		{
			System.out.println("1");
			return;    // 要写 return 结束语句的运行, 不然答案错误;
		}
		StringTokenizer st = new StringTokenizer(str, " ", true); // 字符分词器, 可以百度一下用法; 
		Set<String> set = new HashSet<String>(); //泛型, HasSet 中不能有重复的元素, 利用这一性质可以计算不同字符的个数 
		// 方法可以选, 易懂就行
		while (st.hasMoreElements())
		{
			set.add(st.nextToken());// 判断
			
		}
		System.out.println(set.size()-1); // 数组大小 --1;
		
	}

}

解题思路: 点个赞呗;





注意事项:





参考代码:

 

0.0分

0 人评分

  评论区

就是不不知道为什么StringTokenizer st = new StringTokenizer(str, " ", true);第三个参数为什么是true,这样把分隔符带进去了,只有最后一个数没有空格,判断是不是有点问题,然后最后数组大小减一,大概是弥补这个漏洞?
2018-02-26 12:15:33
  • «
  • 1
  • »