#include <bits/stdc++.h>
using namespace std;
int n, k, ans;
bool alpha[26];
vector<string> v;
int canReadNum(){
bool read;
int cnt = 0;
for(int i = 0; i < v.size(); i++){
read = true;
string word = v[i];
for(int j = 0; j < word.length(); j++){
if(alpha[word[j] - 'a'] == false){
read = false;
break;
}
}
if(read) cnt++;
}
return cnt;
}
void DFS(int idx, int cnt){
if(cnt == k){
ans = max(ans, canReadNum());
return;
}
for(int i = idx; i < 26; i++){
if(alpha[i]) continue;
alpha[i] = true;
DFS(i, cnt+1);
alpha[i] = false;
}
}
void solve(){
alpha['a'- 'a'] = true;
alpha['n'- 'a'] = true;
alpha['t'- 'a'] = true;
alpha['i'- 'a'] = true;
alpha['c'- 'a'] = true;
k -= 5;
DFS(0, 0);
cout << ans;
}
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
cin >> n >> k;
string inp;
for(int i = 0; i < n; i++){
cin >> inp;
v.push_back(inp);
}
if(k < 5){
cout << 0;
return 0;
}
solve();
}
'PS(구 C++)' 카테고리의 다른 글
백준 1194 달이 차오른다, 가자. C++ (0) | 2022.01.30 |
---|---|
백준 17471 게리멘더링 C++ (0) | 2022.01.30 |
백준 1726 C++ (0) | 2022.01.30 |
백준 3055 탈출 C ++ (0) | 2022.01.27 |
백준 17090 C++ (0) | 2022.01.27 |
댓글