Problem5574--整数拆分(split)

5574: 整数拆分(split)

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB

Description

小明最近在学习整数拆分,他在草稿纸上随手写下了一串数字,仅包含 “0”~“9” 这十种数字,长度不超过 $9$。
现在你可以在这串数字中选出任意一个子串(不能为空,可以是原串),不能以数字 “0” 开始。小明想要知道,这些可能的子串构成的数,有多少个比他心目中的幸运数字 $x$ 更大。
注:子串只要在原串中的起始或者终止位置不同,就认为是不同的子串;子串和 $x$ 都是十进制的。

Input

第一行输入一个数字串 $S$,仅包含数字 “0”~“9” 这十种数字,长度不超过 $9$。
第二行包含一个整数 $x$,表示小明的幸运数字。

Output

有多少个非 “0” 开始的子串,表示成十进制数后比 $x$ 更大。

Constraints

对于 $50\%$ 的数据,$S$ 的第一个字母不超过 “2”。
对于 $100\%$ 的数据,$S$ 仅包含数字 “0”~“9” 这十种数字,$1 \leq \lvert S \vert \leq 9,\ 0 \leq x \leq 777444111$。

Sample 1 Input

1023
12

Sample 1 Output

3
子串 “23”、“102” 和子串 “1023”,都要比 $12$ 更大。

HINT

题目来源:2018年余姚市小学生程序涉及竞赛复赛。

Source/Category