@[Zzz123456789101112](/user/1292265)
hack组
10 0
你的程序输出是10;
关键问题就是那个判断个位是否含有x那步出错了,这个应该很简单解决你,改一下就可以ac了,希望可以帮到你
by sll00 @ 2024-03-03 19:03:15
@[sll00](/user/1243869)
具体应该怎样改呢?是在Judge()函数中进行改正还是主函数中啊
by Zzz123456789101112 @ 2024-03-03 19:13:51
@[Zzz123456789101112](/user/1292265)
本着让你好看点,好理解点的模式,在你的原代码上改
```cpp
#include<iostream>
using namespace std;
void Judge(int a,int x,int *i){
if(a%10==x){
(*i)++;
}
int b=(a-a%10)/10;
//这里加个=
if(b>=10){
Judge(b,x,i);
}
if(b==x){
(*i)++;
}
}
int main(){
int n,x,i;
cin>>n>>x;
for(int a=1;a<=n;a++){
if(a==x){
i++;
continue;
}
//这里
else if(a>=10)
Judge(a,x,&i);
}
cout<<i;
return 0;
}
```
修改的点全在这里面了,
~~~~给个关注吧qwq~~~~
by sll00 @ 2024-03-03 19:40:37
@[sll00](/user/1243869) 通过啦,谢谢啦
by Zzz123456789101112 @ 2024-03-05 19:01:04