题解:AT_abc363_c [ABC363C] Avoid K Palindrome 2
题意
求将给定的字符串
思路
数据范围太小了,直接暴力。每次生成全排列,枚举每个长度为
实现
这里为方便输入字符串时从
code
#include <bits/stdc++.h>
using namespace std;
int n, k, cnt;
char s[15];
int main () {
cin >> n >> k;
for (int i=1; i<=n; i++)
cin >> s[i];
sort(s+1, s+n+1);
do {
bool ok=1;
for (int i=1; i<=n-k+1; i++) {
int len=i+k-1;
bool f=1;
for (int l=i, r=len; l<=len&&r>=0; l++, r--)
if (s[l]!=s[r]) {
f=0;
break;
}
if (f) {
ok=0;
break;
}
}
cnt+=ok;
} while (next_permutation(s+1, s+n+1));
cout << cnt;
return 0;
}