这道题我已经放弃了...只能请求各位大佬

P1179 [NOIP2010 普及组] 数字统计

把q=i放到while循环外就可以了
by bj12z_liuzhengyue @ 2024-02-22 08:01:50


``` #include<bits/stdc++.h> using namespace std; long long a,b; int main(){ cin>>a>>b; long long sum=0,q; for(int i=a;i<=b;i++){ q=i; while(q!=0){ if(q%10==2){ sum++; } q/=10; } } cout<<sum; return 0; } ```
by bj12z_liuzhengyue @ 2024-02-22 08:02:29


@[cao_rui_xi](/user/1252034) 你的 $q$ 在每次循环的时候都赋值成了 $i$,那样每次取得都是各位,应当改成这样: ``` #include<bits/stdc++.h> using namespace std; long long a,b; int main(){ cin>>a>>b; long long sum=0,q; for(int i=a;i<=b;i++){ q = i; while(q!=0){ if(q%10==2){ sum++; } q/=10; } } cout<<sum; return 0; } ```
by huangzhixia @ 2024-02-22 08:03:26


给个关注吧
by bj12z_liuzhengyue @ 2024-02-22 08:03:33


@[huangzhixia](/user/989007) @[bj12z_liuzhengyue](/user/757522) 谢谢 已关
by cao_rui_xi @ 2024-02-22 08:08:38


|