题解 | #Digital Roots#

Digital Roots

https://www.nowcoder.com/practice/cef727d0af33479c9fb4a9c120702414

#include <iostream>
using namespace std;
// 999
int fun(int num) {
    while (num >= 10) {
        int sum = 0;
        while (num > 0) {
            sum += num % 10;
            num /= 10;
        }
        num=sum;
    }
    return num;
}
int main() {
    int a, b;
    while (cin >> a ) { // 注意 while 处理多个 case
        b = fun(a);
        cout << b << endl;
    }
}
// 数量级数过大 运行时间过长
// int fun(int num) {
//     int a = num;
//     int sum = 0;
//     while (a > 0) {
//         sum +=  a % 10;
//         a = a / 10;
//     }
//     return sum;
// }
// int main() {
//     int a, b;
//     while (cin >> a ) { // 注意 while 处理多个 case
//         b = fun(a);
//         while (b >= 10) {
//             b = fun(a);
//         }
//         cout << b << endl;
//     }
// }

全部评论

相关推荐

02-26 13:56
已编辑
重庆财经学院 Java
King987:你有实习经历,但是写的也太简单了,这肯定是不行的,你主要要包装实习经历这一块,看我的作品,你自己包装一下吧,或者发我,我给你出一期作品
点赞 评论 收藏
分享
肖先生~:大一点得到公司面试更能学到点东西
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务