社区讨论

20pts求调必关

B3850[GESP202306 四级] 幸运数参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@mls0ieh4
此快照首次捕获于
2026/02/18 20:32
19 小时前
此快照最后确认于
2026/02/18 20:46
19 小时前
查看原帖
CPP
.cpp
CPP
#include <iostream>
#include <string>

using namespace std;

int solve(int n, bool is_use)
{
    if(!is_use){n *= 7;}
    if(n > 10)
    {
        int t = 0;
        while(n % 10 != 0){t += n % 10;n /= 10;}
        if(t < 10){return t;}
        else{return solve(t, true);}
    }
    else
    {
        return n;
    }
}

int main(void)
{
    int n;
    cin >> n;
    for(int i = 0;i < n;i++)
    {
        string s;
        cin >> s;
        int cnt = 0;
        for(int i = s.size() - 1;i >= 0;i--)
        {
            if(i % 2 == 0){cnt += solve(s[i] - 48, false);}
            else{cnt += s[i] - 48;}
        }
        if(cnt % 8 == 0 && cnt > 0){cout << "T\n";}
        else{cout << "F\n";}
    }
}

回复

0 条回复,欢迎继续交流。

正在加载回复...