这个题第四个测试点卡了的朋友们,你们可以试以下数据你的程序能否正常运行
输入:
1
ai, go to ong.
输出:
Skipped
这个题给的条件中下半句诗至少有 3 个字。
也就是说上半句可能就一个字,拼音连3个都不到,这种情况下直接用类似于s1=str.substring(v1-3,v1);会出错,因为v1-3<0
import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner sin=new Scanner(System.in); int n=sin.nextInt(); for (int i = 0; i < n; i++) { String str=sin.next()+sin.nextLine(); int v1=str.indexOf(","); //mid为逗号所在位置索引 int v2=str.indexOf("."); //v为.所在位置索引 String s2=str.substring(v2-3, v2); //句号前面3个字母 String s1; //逗号前面3个字母 if(v1<3){ s1=""; }else{ s1=str.substring(v1-3,v1); } String s3[]=str.split(" "); if(s1.compareTo("ong")==0&&s2.compareTo("ong")==0){ //如果是true满足上下两句末尾的字都是“ong”结尾 for (int j = 0; j < s3.length-3; j++) { System.out.print(s3[j]+" "); } System.out.println("qiao ben zhong."); }else{ System.out.println("Skipped"); } } }}