2019ブルーブリッジカップ省試合B組JAVA人物相関


2019ブルーブリッジカップ省試合B組JAVA人物相関
//初心者はスプレーしないでください.【問題の説明】明ちゃんは小説の中の人物の相関性を分析している.彼は小説の中でAliceとBobが何回同時に現れたか知りたいと思っている.より正確には、明ちゃんがAliceとBobを「同時に現れる」と定義したのは、小説のテキストの中でAliceとBobの間にK文字を超えないという意味だ.例えば、This is a story about Alice and Bob.Alice wants to send a private message to Bob.K=20を仮定すると、AliceとBobは同時に2回現れ、それぞれ「Alice and Bob」と「Bob.Alice」である.前者はAliceとBobの間に5文字、後者は2文字あります.注意:
AliceやBobは大文字と小文字が敏感で、aliceやbobなどは計算されていません.
AliceとBobは単独の単語で、前後に句読点とスペースがありますが、アルファベットはありません.例えばBobbiはBobが現れたわけではない.
第1行目は整数Kを含む.2行目には、大文字と小文字、句読点、スペースのみを含む1行の文字列が含まれます.長さは1000000を超えない.【出力フォーマット】AliceとBobが同時に発生した回数を示す整数を出力します.【サンプル入力】
20 This is a story about Alice and Bob. Alice wants to send a private message to Bob.
【サンプル出力】2————————————————————著作権声明:本文はCSDNブロガーの「蔚藍不遠」のオリジナル文章であり、CC 4.0 BY-SA著作権協定に従い、原文出典リンク及び本声明を転載してください.テキストリンク:https://blog.csdn.net/weixin_44723496/article/details/108687497 import java.util.Scanner; public class Main {
public static void main(String[] args) {
	Scanner in=new Scanner(System.in);
    int a=in.nextInt();
    String str1=in.nextLine();
    String str=in.nextLine();
    int ans=0;
    System.out.println(str.length());
   int  B[]=new int[str.length()];       
    int A[]=new int[str.length()];
    int  B1[]=new int[str.length()];       
    int A1[]=new int[str.length()];
    
    int i=1,j=1;
    while(i0)
    	{B1[k]=B[s];
    ++k;}
    }
    
    for(int y=0;y0)
    	{A1[o]=A[l];
    ++o;}
    }
    System.out.println("o="+o);
    for(int x=0;xA1[x])
    			{if(B1[z]-A1[x]<=a+4)
    			ans++;}
    			else
    				{if(A1[x]-B1[z]<=a+2)
    					ans++;}
    	}
	System.out.println(ans);

	      }

}