第一步将不是字母的字符替换成空格,再用split进行分隔,倒序输出就可以了。需要注意的是String的isBlank()方法在Java 11可以用,牛客的这个是不可以用的。
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while (in.hasNextLine()) {
String origin = in.nextLine();
StringBuilder converted = new StringBuilder();
for(int j = 0; j < origin.length(); j++){
char c = origin.charAt(j);
if((c >= 'a' && c <= 'z')||(c >= 'A' && c <= 'Z')){
converted.append(c);
}
else{
converted.append(" ");
}
}
String[] str = converted.toString().split(" ");
StringBuilder res = new StringBuilder();
for(int i = str.length - 1; i >= 0; i--){
//str[i].isBlank();
if(!str[i].trim().isEmpty()){
res.append(str[i]);
res.append(" ");
}
}
System.out.println(res.toString().trim());
}
}
}
京公网安备 11010502036488号