求助c++大佬!!!

B2078 含 k 个 3 的数

lzy13915136909 @ 2024-02-25 20:28:54

本蒟蒻的代码:

#include<bits/stdc++.h>
using namespace std;
int main()
{
    long long m,k;
    while(m!=0)
    {
        if((m-k)%10==0)
        {
            cout<<"YES";
            return 0;
        }
        m=m/10;
    }
    cout<<"NO";
    return 0;
}

by TCIC_4294967296 @ 2024-02-28 19:51:02

对一个数字进行复杂的数位提取、交换等操作时,直接使用数学运算的方式容易出错还可能溢出,使用字符串更方便,不易出错。

AC Code:

#include<bits/stdc++.h>
using namespace std;
int main()
{
    string s;
    int k,cnt=0;
    cin>>s>>k;
    for(int i=0;i<s.size();i++)
        if(s[i]=='3') cnt++;
    puts(cnt==k?"Yes":"No");
}

by TCIC_4294967296 @ 2024-02-28 19:52:00

@TCIC_4294967296 对不起没看到此贴已完结,现在删不了了


上一页 |