ccf201912-1 报数 C++代码实现
代码实现:
#include<iostream> using namespace std; /*题目限制为三位数*/ /*思路: 1.用一个长度为4的数组(初值为0)保存每个人分别跳过了几次 2.当报数为7的倍数或者数字里包含7时,报数长度加1,报数的这个人的数组的值count[i]加1 3.循环结束后打印数组元素 */ int main() { int n = 0; cin >> n; int count[4] = {0,0,0,0};//计数数组 int i = 0;//记录当前报数的是第几个人 for (int j = 1; j <= n; j++) { //报的数是7的倍数或者包含7的情况 if (j % 7 == 0 || j % 10 == 7 || j / 10 % 10 == 7 || j / 100 % 10 == 7) { n++; count[i]++; } //报到最后一个人时,重新从第一个人开始 if (i == 3) { i = 0; } else { i++; } } for (int i = 0; i < 4; i++) { cout << count[i] << endl; } return 0; }
唯有热爱方能抵御岁月漫长。