Roma and Lucky Numbers
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output
Roma (a popular Russian name that means 'Roman') loves the Little Lvov Elephant's lucky numbers.
Let us remind you that lucky numbers are positive integers whose decimal representation only contains lucky digits 4 and 7. For example, numbers 47, 744, 4 are lucky and 5, 17, 467 are not.
Roma's got n positive integers. He wonders, how many of those integers have not more than k lucky digits? Help him, write the program that solves the problem.
Input
The first line contains two integers n, k (1?≤?n,?k?≤?100). The second line contains n integers ai (1?≤?ai?≤?109) ? the numbers that Roma has.
The numbers in the lines are separated by single spaces.
Output
In a single line print a single integer ? the answer to the problem.
Sample test(s)
input
3 41 2 4
output
input
3 2447 44 77
output
Note
In the first sample all numbers contain at most four lucky digits, so the answer is 3.
In the second sample number 447 doesn't fit in, as it contains more than two lucky digits. All other numbers are fine, so the answer is 2.
题目大意:脑残呀,开始竟然没读懂题意。给出n个数,让你看这么多数中,有多少个是包含不多于k个幸运数字的,其中4和7是幸运数字。
解题思路:直接判断每个数数否满足情况就好了。
AC代码:
#include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#include <vector>#include <queue>#include <set>#include <map>#include <string>#include <math.h>#include <stdlib.h>#include <time.h>using namespace std;#define INF 0x7fffffffint main(){ #ifdef sxk freopen("in.txt","r",stdin); #endif int n, k, t; while(scanf("%d%d",&n,&k)!=EOF) { int ans = 0; for(int i=0; i<n; i++){ scanf("%d", &t); int cnt = 0;; while(t){ int x = t%10; if(x==4 || x==7) cnt ++; t /= 10; } if(cnt <= k) ans ++; } printf("%d\n", ans); } return 0;}