【codeforces841A】Generous Kefa

原题

A. Generous Kefa
time limit per test:
2 seconds
memory limit per test:
256 megabytes

input:standard input

output:standard output

     One day Kefa found n baloons. For convenience, we denote color of i-th baloon as si — lowercase letter of the Latin alphabet. Also Kefa has k friends. Friend will be upset, If he get two baloons of the same color. Kefa want to give out all baloons to his friends. Help Kefa to find out, can he give out all his baloons, such that no one of his friens will be upset — print «YES», if he can, and «NO», otherwise. Note, that Kefa’s friend will not upset, if he doesn’t get baloons at all.

Input

The first line contains two integers n and k (1 ≤ n, k ≤ 100) — the number of baloons and friends.

Next line contains string s — colors of baloons.

Output

Answer to the task — «YES» or «NO» in a single line.

You can choose the case (lower or upper) for each letter arbitrary.

Examples

input1

4 2
aabb

output1

YES

input2

6 3
aacaab

output2

NO

Note

In the first sample Kefa can give 1-st and 3-rd baloon to the first friend, and 2-nd and 4-th to the second.

In the second sample Kefa needs to give to all his friends baloons of color a, but one baloon will stay, thats why answer is «NO».

题目大意

给一串包含小写字母的字符串,每个字符代表不同颜色的气球,再给出一个人数,问能否把气球发完并保证不存在一个人拿2个相同颜色的气球。

解法

水题:只要保证数量最多的那种颜色的气球不超过人数即可

代码


#include<iostream>
#include<cstdio>
#include<string>
#define MAXX 
using namespace std;
int g_n,g_k,g_cnt;
int a[30];
int main(){
    string ch;
    scanf("%d%d",&g_n,&g_k);
    cin>>ch;
    int len=ch.size();
    for(int i=0;i<len;i++) 
        a[ch[i]-'a'+1]++;
    for(int i=1;i<=26;i++)
        if(a[i]>g_k){
            cout<<"NO";
            return 0;
        }
    cout<<"YES";
    return 0;
}
原文地址:https://www.cnblogs.com/bbqub/p/cf_841a_t.html