C - Validation Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 8

注意

この問題に対する言及は、2021/7/17 18:00 JST まで禁止されています。言及がなされた場合、賠償が請求される可能性があります。 試験後に総合得点や認定級を公表するのは構いませんが、どの問題が解けたかなどの情報は発信しないようにお願いします。

問題文

0 から 9 の数字からなる文字列 S が与えられます。
S を整数の十進数表示として見たとき、以下の 2 つの条件をともに満たすかどうか判定してください。

  • 先頭に不要な 0 がない。
  • L 以上 R 以下である。

制約

  • S0 から 9 の数字からなる文字列
  • 1 \leq |S| \leq 100
  • 0 \leq L \leq R \leq 10^9
  • LR は整数

入力

入力は以下の形式で標準入力から与えられる。

S
L R

出力

S が問題文に示す 2 つの条件をともに満たすならば Yes と出力し、 そうでなければ No と出力せよ。


入力例 1

13579
10000 20000

出力例 1

Yes

13579 は先頭に不要な 0 を持たず、 10000 以上 20000 以下であるため、条件を満たします。 よって、Yes と出力します。


入力例 2

12345678901234567890
0 1000000000

出力例 2

No

S が表す整数は、64 ビット整数型で表現できる最大値よりも大きいことがあります。


入力例 3

05
5 5

出力例 3

No

05 は先頭に不要な 0 を持つので、条件を満たしません。 よって、No と出力します。


入力例 4

0
0 1

出力例 4

Yes

0 の先頭の 0 は、不要な 0 ではないことに注意してください。

Score : 8 points

Warning

Do not make any mention of this problem until July 17, 2021, 6:00 p.m. JST. In case of violation, compensation may be demanded. After the examination, you can reveal your total score and grade to others, but nothing more (for example, which problems you solved).

Problem Statement

Given is a string S consisting of digits between 0 and 9 (inclusive).
Determine whether S satisfies both of the conditions below as the decimal representation of an integer.

  • It has no unnecessary leading zeroes.
  • It is between L and R.

Constraints

  • S is a string consisiting of digits between 0 and 9 (inclusive).
  • 1 \leq |S| \leq 100
  • 0 \leq L \leq R \leq 10^9
  • L and R are integers.

Input

Input is given from Standard Input in the following format:

S
L R

Output

If S satisfies both of the conditions in the Problem Statement, print Yes; otherwise, print No.


Sample Input 1

13579
10000 20000

Sample Output 1

Yes

13579 has no unnecessary leading 0 and is between 10000 and 20000, satisfying the condition. Thus, we should print Yes.


Sample Input 2

12345678901234567890
0 1000000000

Sample Output 2

No

S may represent an integer greater than the maximum value that a 64-bit integer type can represent.


Sample Input 3

05
5 5

Sample Output 3

No

05 has an unnecessary leading zero, violating the condition. Thus, we should print No.


Sample Input 4

0
0 1

Sample Output 4

Yes

Note that the 0 at the beginning of 0 is not an unnecessary leading zero.