人物相关性分析蓝桥杯第十届

首页 » 算法 » 人物相关性分析蓝桥杯第十届

题目需要注意的是字符串切分的问题, 切错了直接导致答案错误. 切分过程中还需要注意转义字符的问题.
切出来的字符串存入字符串数组中.
最后距离就是中间字符串的长度加上空格的长度
具体实现请看代码

package ten;
 
import java.util.Scanner;
 
public class 人物相关性分析 {
public static void main(String[] args) {
 Scanner shu = new Scanner(System.in);
 int K=shu.nextInt();
 shu.nextLine();
 String str=shu.nextLine();
 String[] s = str.split("\s+|\.");
 //有空格按空格切分,有.和空格按.切分,空格为一个空字符串
 String a="Alice";
 String b="Bob";
 int count=0;
 for(int i=0;i<s.length;i++) {
  if(s[i].equals(a)) {//Alice 和 Bob的距离
   for(int j =i+1;j<s.length;j++) {
    int sum=0;
    if(s[j].equals(b)) {
     for(int l=i+1;l<j;l++) {
      sum+=s[l].length()+1;//每个单词加一个空格的长度
     }
     if(sum+1<=K) {
      System.out.println(sum+1);//测试间距
      ++count;
     }
    }
   }
  }
 }
 for(int i=0;i<s.length;i++) {
  if(s[i].equals(b)) {//Bob 和 Alice的距离
   for(int j =i+1;j<s.length;j++) {
    int sum=0;
    if(s[j].equals(a)) {
     for(int l=i+1;l<j;l++) {
      sum+=s[l].length()+1;
     }
     if(sum+1<=K) {
      System.out.println(sum+1);
      ++count;
     }
    }
   }
  }
 }
 System.out.println(count);
}
}

 

分享到:
赞(0) 打赏

评论 7

评论前必须登录!

 

  1. #1

    渣渣辉6个月前 (03-27)
  2. #2

    good厉害了

    小蚯蚓6个月前 (03-27)
  3. #3

    以后多发点哦

    渣渣混6个月前 (03-27)
  4. #4

    奥利给

    笔记本6个月前 (03-28)
  5. #5

    给你点赞

    hello6个月前 (03-28)
  6. #6

    我给你点赞了

    笨鸟先飞6个月前 (03-28)
  7. #7

    可以

    沥青4个月前 (05-26)

觉得文章有用就打赏一下弟弟吧

支付宝扫一扫打赏

微信扫一扫打赏

Vieu4.5主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。
正在播放:

作者想对您说:

累了就停下来听首歌吧

听完后会给您一个好心情

最后

等到您不容易

还希望您能多待一会儿

      00:00/00:00