本文主要是介绍华为机试:标题:整数拆分 备注:请参照样例理解题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
标题:整数拆分 | 时间限制:1秒 | 内存限制:262144K 编辑
限定语言:不限
将给出的数字各个位数拆分,并将拆分后的数值相加,直到结果为个位数;
请使用程序写出;
备注:
请参照样例理解题目意义
示例1
输入
258
输出
6
说明
258为输入的数值,将各个位数相加的意思是:2 + 5 + 8 = 15;15为十位数,继续拆分相加,即:1 + 5 = 6;6为个位数,就是得到的最终结果,返回6即可
#include <iostream>
#include <string>using namespace std;int t3(int num) {if (to_string(num).length() == 1) return num;string s = to_string(num);int j = 0;for (int i = 0; i < s.length(); i++) {j += s[i] - '0';}return t3(j);
}int main() {cout << t3(111) << endl; // 输出 6return 0;
}
这篇关于华为机试:标题:整数拆分 备注:请参照样例理解题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!