csp-M4-A-TT数鸭子

TT数鸭子

时间限制 空间限制1S 256MB

题目描述

  这一天, TT因为疫情在家憋得难受,在云吸猫一小时后,TT决定去附近自家的山头游玩。TT来到一个小湖边,看到了许多在湖边嬉戏的鸭子,T顿生羡慕。此时他发现每一只鸭子 都不一样,或羽毛不同,或性格不同。TT在脑子里开了一个map<鸭子,整数> tong,把鸭子变成了一些数字。 现在他好奇,有多少只鸭子映射成的数的数位中不同的数字个数小于k。

输入描述
输入第一行包含两个数n,k,表示鸭子的个数和题目要求的k。
接下来一行有n个数,aia_ ia
i

, 每个数表示鸭子被TT映射之后的值。
输出描述
输出一行,一个数,表示满足题目描述的鸭子的个数。
无行末空格
样例输入

6 5
123456789 9876543210 233 666 1 114514
1
样例输出

4

解题思路:

简单题,注意数的范围  long long 即可。

 1 #include<iostream>
 2 #include<cstring>
 3 #include<cstdio>
 4 using namespace std;
 5 typedef long long ll;
 6 
 7 int n,k;
 8 //ll a[1000010];
 9 ll t;     
10 bool b[10];
11 int main(){
12     
13     scanf("%d%d",&n,&k);
14     //cin>>n>>k;    
15     long long sum,cnt=0;    
16     if(k > 10) {
17         for(int i=0;i<n;i++ )scanf("%lld",&t);// cin>>t;
18         cnt = n; 
19     }
20     else{
21            for(int i=0;i<n;i++) {
22         //cin>>t;    
23         scanf("%lld",&t);
24         sum=0;  
25         memset(b,0,sizeof(b));
26         while(t>0){   
27             b[t%10]=1;
28             t/=10;
29         }    
30         for(int i=0;i<10;i++){
31         if(b[i])sum++;
32         }                
33         if(sum<k) cnt++;        
34             
35         }
36     }
37     printf("%lld\n",cnt);
38     //cout<<cnt<<endl;    
39     return 0;
40 }

 

posted @ 2020-06-05 12:20  流转~星云  阅读(161)  评论(0编辑  收藏  举报