433 3
FZDDHMJGBZCHFUXBBPIEBBEFDWOMXXEPOMDGSMPIUZOMRZQNSJAVNATGIWPDFISKFQXJNVFXPHOZDAEZFDAHDXXQKZMGNSGKQNWGNGJGJZVVITKNFLVCPMZSDMCHBTVAWYVZLIXXIADXNYILEYNIQHKMOGMVOCWGHCWIYMPEPADSJAAKEGTUSEDWAHMNYJDIHBKHVUHLYGNGZDBULRXLSAJHPCMNWCEAAPYMHDTYWPADOTJTXTXUKLCHWKUSZRHEKQEFPVJEJJHRWCKYOIWALRTIBUMNOCRXLSIKQCJVQXEPGOHRUDJDKMUUUDORURWXJNVRVMNOUNRFKSVMTMZGOIJLXEPAMVGESOADYIGZXRBJDIWKNOWTCSROAQTBECHTOZVSQUOOJRZIBAUHMKAXDCIMDZJFMABGRNTGPUJAUNFPFWCJG
 6 2
ABCABC
 41 19
TMEYYIIELFDCMBDKWWKYNRNDUPRONYROXQCLVQALP
 5 2
ABACA
 377 3
EADADBBBBDEAABBAEBABACDBDBBCACAADBEAEACDEAABACADEEDEACACDADABBBBDDEECBDABACACBAECBADAEBDEEBDBCDAEADBCDDACACDCCEEDBCCBBCEDBECBABCDDBBDEADEDAEACDECECBEBACBCCDCDBDAECDECADBCBEDBBDAAEBCAAECCDCCDBDDEBADEEBDCAEABBDEDBBDDEAECCBDDCDEACDAECCBDDABABEAEDCDEDBAECBDEACEBCECEACDCBABCBAAEAADACADBBBBABEADBCADEBCBECCABBDDDEEBCDEBADEBDAAABBEABADEDEAEABCEEBEEDEAEBEABCEDDBACBCCADEBAAAAAEABABBCE
 3 26
AAB
 27 1
ABCDEFGHIJKLMNOPQRSTUVWXYZA
 73 2
DEBECECBBADAADEAABEAEEEAEBEAEBCDDBABBAEBACCBEEBBAEADEECACEDEEDABACDCDBBBD
 7 2
ABCDBCD
 5 1
AZAZA
 44 15
HGJIFCGGCDGIJDHBIBGAEABCIABIGBDEADBBBAGDFDHA
 5 2
ABCAB
 8 3
ABCBCDCA
 26 1
ABCDEFGHIJKLMNOPQRSTUVWXYZ

YES
 YES
 NO
 NO
 YES
 NO
 YES
 YES
 YES
 YES
 NO
 YES
 NO
 NO

//https://codeforces.com/problemset/problem/834/B
import java.util.*;
public class theFestiveEvening {
	public static String gaurdsRequired(String g,int k) {
		List<Character> guests = new ArrayList<>();
		int gaurds = 0;
		int freeGaurds = 0;
		for(int i=0; i<g.length();i++) {
			guests.add(g.charAt(i));
		}
		List<Character> guestsExist = new ArrayList<>();
		for(int i=0; i<guests.size(); i++) {
			//System.out.println("Currently processing: "+guests.get(i));
			if(guestsExist.contains(guests.get(i))){
				//System.out.println("Already Existing in the second list ");
				if(guests.subList(i+1, guests.size()).contains(guests.get(i))) {
					//System.out.println("Present in further sublist, continuing...");
					continue;
				}
				else {
					gaurds--;
					freeGaurds++;
					//System.out.println("Not present in the further sublist so removing gaurd:");
					//System.out.println("Gaurds:" + gaurds + " Free Gaurds:"+freeGaurds);
				}
			}
			else {
				//System.out.println("Not present in second list, so adding..");
				guestsExist.add(guests.get(i));
				//System.out.println("Guest Added to the list:" + guests.get(i));
				//System.out.println("GAurds:"+gaurds+" Free Gaurds:"+freeGaurds);
				if(freeGaurds>0) {
					freeGaurds--;
					gaurds++;
				}
				else gaurds++;
				//System.out.println("GAurds:"+gaurds+" Free Gaurds:"+freeGaurds);
				//System.out.println("Futher List:"+guests.subList(i+1, guests.size()));
				if(guests.subList(i+1, guests.size()).contains(guests.get(i))) {
					//System.out.println("Guest is present in the further list so continuing...");
                                        continue;
                                }
                                else {
                                        gaurds--;
                                        freeGaurds++;
					//System.out.println("Guest is not present in the further list.");
					//System.out.println("Gaurds:"+gaurds+" Free Gaurds:"+freeGaurds);
                                }
				
			}
		}
		int totalGaurds = freeGaurds + gaurds;
		//System.out.println(totalGaurds);
		if(k >= totalGaurds) {
			return "NO";
		}
		else return "YES";

			
	}
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in);
		//System.out.println("Enter the number of guests and gaurds respectively:::");
		String[] nk = input.nextLine().split(" ");
		int n = Integer.parseInt(nk[0]);
		int k = Integer.parseInt(nk[1]);
		//System.out.println("Enter the guests' list:::");
		String g = input.nextLine();
		String res = gaurdsRequired(g, k);
		System.out.println(res);		
	}
}