2019ブルーブリッジカップ省試合B組JAVA人物相関
1920 ワード
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 {
//初心者はスプレーしないでください.【問題の説明】明ちゃんは小説の中の人物の相関性を分析している.彼は小説の中で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);
}
}