A49854.幸运数 题解 思路见注释
2026-08-02 14:03:52
发布于:广东
13阅读
0回复
0点赞
#include<bits/stdc++.h>
using namespace std;
const int N = 1e5+9;
int n,m,t,ans;
bool f(int x){//判断x到x+m之间是否有数的各位数字之和能被t整除
for(int i=x;i<=x+m;i++){
int sum=0,tmp=i;//tmp是i的副本
while(tmp){//循环求i的各位数字之和
sum+=tmp%10;
tmp/=10;
}
if(sum%t==0)return 1;//如果能被t整除,返回1(也就是true)
}
return 0;//如果上面全部执行完没有return 1,则不是幸运数
}
int main(){
cin>>n>>m>>t;
for(int i=1;i<=n;i++){
if(f(i))ans++;
}
cout<<ans;
}
这里空空如也





有帮助,赞一个