Competition4_t1
题目描述
这一天,TT因为疫情在家憋得难受,在云吸猫一小时后,TT决定去附近自家的山头游玩。
TT来到一个小湖边,看到了许多在湖边嬉戏的鸭子,TT顿生羡慕。此时他发现每一只鸭子都不一样,或羽毛不同,或性格不同。TT在脑子里开了一个map<鸭子,整数> tong,把鸭子变成了一些数字。现在他好奇,有多少只鸭子映射成的数的数位中不同的数字个数小于k。
输入格式
输入第一行包含两个数n,k,表示鸭子的个数和题目要求的k。
接下来一行有n个数, a i a_i ai,每个数表示鸭子被TT映射之后的值。
输出格式
输出一行,一个数,表示满足题目描述的鸭子的个数。
无行末空格
输入样例
6 5
123456789 9876543210 233 666 1 114514
输出样例
4
解题思路
其实就是检测给定的数字里所有的数位上的数的种类数。
#include <iostream>
#include <string>
#include <cstring>
using namespace std;bool happen[10];int main()
{int n, k;cin >> n >> k;int ans = 0;for (int i = 0; i < n; i++){memset(happen, 0, sizeof happen);string num;cin >> num;for (int j = 0; j < num.size(); j++){happen[num[j] - 48] = 1;}int count = 0;for (int j = 0; j < 10; j++){if (happen[j]) count++;}if (count < k) ans++;}cout << ans << endl;
}
发布评论