描述 | |
---|---|
知识点 | 字符串,循环 |
运行时间限制 | 10M |
内存限制 | 128 |
输入 |
输入一串字符 |
输出 |
输出一个字符 |
样例输入 | asdfasdfo |
样例输出 | o |
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
Scanner sca = new Scanner(System.in);
String input = sca.nextLine();
sca.close();
int length = input.length();
int[] count = new int[107];
int[] sort = new int[length];
for(int i = 0; i < length; i++)
{
count[input.charAt(i)-20]++;
sort[i] = input.charAt(i);
}
int i;
for(i = 0; i < length; i++)
{
if(count[sort[i]-20] == 1)
{
System.out.println((char)sort[i]);
break;
}
}
if(i == length)
System.out.println('.');
}
}
算法比较简单,后来想了一下,也可以从头开始获取字符串每个字符,从末尾开始获取每个字符,然后分别比较它们是否相等,如果相等就是第一次出现的且只出现一次的字符,直接输出然后结束循环就行了。