4430 - 快速求和
时间限制 : 1 秒
内存限制 : 128 MB
给定一个数字字符串,用最小次数的加法让字符串等于一个给定的目标数字。每次加法就是在字符串的某个位置插入一个加号。在里面要的所有加号都插入后,就像做普通加法那样来求值。
例如,考虑字符串12,做 0 次加法,我们得到数字 12。如果插入 1 个加号,我们得到 3,因此,这个例子中,最少用 1 次加法就得到数字 3。
再举一例,考虑字符串303和目标数字 6,最佳方法不是3+0+3。而是3+03。能这样做是因为一个数的前导 0 不会改变它的大小。
输入
第一行:一个字符串 s。
第二行:一个整数 n。
输出
一行一个整数表示最少的加法次数让 s 等于 n。如果怎么做都不能让 s 等于 n ,则输出 -1。
样例
输入
99999 45
输出
4
提示
对于 100\% 的数据,保证 1\le \operatorname{len}(s)\le40,1 \leq n\le10^5。
来源
luogu