题目

在这里插入图片描述
201912-01报数 - 图2

思路

用模拟做就可以了。

逻辑不难,注意范围啊!n<=666不代表总数就不会超过千!但不会到7千的,所以其实千位没必要算。

代码

  1. #include<iostream>
  2. using namespace std;
  3. int main(){
  4. int people[4] ={0};//丁甲乙丙
  5. int count =0;
  6. int i=1;
  7. int n;//n<=666不代表总数不超过666!!
  8. cin>>n;
  9. while(count!=n){
  10. int gewei =((i%1000)%100)%10;
  11. int shiwei =((i%1000)%100)/10;
  12. int baiwei =(i%1000)/100;
  13. int qianwei =i%1000;
  14. if(i%7==0||gewei==7||shiwei==7||baiwei==7||qianwei==7){
  15. people[i%4]++;
  16. }else{
  17. count++;
  18. }
  19. i++;
  20. }
  21. cout<<people[1]<<endl;
  22. cout<<people[2]<<endl;
  23. cout<<people[3]<<endl;
  24. cout<<people[0]<<endl;
  25. return 0;
  26. }