题目描述
给定非空字符串s,将该字符串分割成一些子串,使每个子串的ASCII码值的和均为水仙花数。
1、若分割不成功,则返回0;
2、若分割成功且分割结果不唯一,则返回-1;
3、若分割成功且分割结果唯一,则返回分割后子串的数目。
输入描述
输入字符串的最大长度为200
输出描述
根据题目描述中情况,返回相应的结果。
ACM输入输出模式
如果你经常使用Leetcode,会知道letcode是不需要编写输入输出函数的。但是华为OD机考使用的是 ACM 模式,需要手动编写输入和输出。
所以最好在牛-客上提前熟悉这种模式。例如C++使用cin/cout
,python使用input()/print()
。JavaScript使用node的readline()
和console.log()
。Java 使用sacnner/system.out.print()
用例
输入 | f3@d5a8 |
输出 | -1 |
说明 | 分割成功但分割结果不唯一,可以分割为两组,一组’f3’和’@d5a8’,另外一组’f3@d5’和’a8’ |
输入 | AXdddF |
输出 | 2 |
说明 | 分割成功且分割结果唯一,可以分割’AX’(153)和’dddF’(370)成两个子串 |
"水仙花数"是指一个三位数,每位上数字的立方和等于该数字本身,如 371 是’水仙花数’,因为 371=33+73+1^3
机考代码查重
华为OD机考完成之后,官方会进行代码查重。华为 od 机考确实有很大的概率抽到原题。如果碰到了题库中的原题&#