Problem:
Problem A: Password

太郎君は、自分のパソコンを持っていて、ログイン時のパスワードを設定していた。しかし、不注意にも太郎君はそのパスワードを忘れてしまった。そこで、パスワードをメモした紙があることを思い出し、紙を見つけた太郎君はそれを見て驚いた。なんと紙は切れていて断片しか存在せず、ところどころに汚れがあり、読めなくなっていたのだ。太郎君はそのメモを参考にパスワードを推測することにした。

Problem

二つの文字列A, Bが与えられる。文字列Aの中に文字列Bが含まれているかどうかを判定し、含まれている場合は"Yes"を、そうでなければ"No"を出力せよ。
文字列Aにはアルファベットの大文字のみが含まれており、文字列Bにはアルファベットの大文字に加えて、'_'(半角アンダーバー)が含まれている。半角アンダーバーは任意の１文字を表す。

Input

文字列 A

文字列 B

Constraints

A,Bの文字列の長さはどちらも1文字以上1000文字以下である。

Bの文字列の長さがAの文字列の長さを超えることはない。

Output

"Yes"または"No"を1行で出力せよ。

Sample Input 1

ABCDE
ABC

Sample Output 1

Yes

Sample Input 2

KUSATSU
KSATSU

Sample Output 2

No

Sample Input 3

ABCABC
ACBA_B

Sample Output 3

No

Sample Input 4

RUPCUAPC
__PC

Sample Output 4

Yes

Sample Input 5

AIZU
_A

Sample Output 5

No

Solution in Rust (judge verdict: Accepted)

use std::io;
use std::process;


fn read_str() -> String {
   let mut s = String::new();
   io::stdin().read_line(&mut s).ok();
   s.trim().parse().ok().unwrap()
}

fn main() {
   let s = read_str();
   let t = read_str();
   for i in 0..s.len() {
      let mut found = true;
      for j in 0..t.len() {
        if (i+j) >= s.len() {
	   found = false;
	   break;
	}
	if t.chars().nth(j) == Some('_') {
	   continue;
	}
	if s.chars().nth(i+j) != t.chars().nth(j) {
	   found = false;
	   break;
	}
      }
      if found {
          println!("Yes");
	  process::exit(0);
      }
   }
   println!("No");
}