代码如下:
#include<bits/stdc++.h>
using namespace std;
int have_7(int a)//看看数字是否含有7
{
while(a)
{
if(a%10==7) return 1;
a/=10;
}
return 0;
}
int main()
{
int a;
cin>>a;
vector<int> s(4); //用数组下标0 1 2 3 代表甲乙丙丁,数组存放其跳过数
int t=0;
int count=0; //记录报数次数
int i=1;
while(count<a)
{
if(i%7==0||have_7(i)) s[t]++; //报到带有7或7的倍数 记录跳过次数
if(i%7!=0&&!have_7(i)) count++; //没跳过就++
i++,t++;
if(t>3) t=0;
}
for(int i=0;i<4;i++)
cout<<s[i]<<endl;
return 0;
}