题目大意:
有一种数名叫 lucky number,这些数都是正整数,且其十进制表示只包含 lucky digits 44 和 77。举个例子,4747,744744,44 是 lucky number;而55,1717,467467 不是。
Roma 有 n 个数,他想:有几个数包含的lucky digits 不超过 k个。
思路:
对于n个整数,在每次输入后对其每个位权上的数进行判断是不是4或者7,若是则用cnt加一并在最终看cnt是否大于m;若不大于m,就对ans加一。
AC:
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int n, m, ans=0;
cin >> n >> m;
for(int i=1; i<=n; i++)
{
int a, cnt=0;
cin >> a;
while(a>0)
{
int mo=a%10;
if(mo==4||mo==7)
cnt++;
a/=10;
}
if(cnt<=m)
ans++;
}
cout << ans << endl;
return 0;
}