HDU 6264 Super-palindrome

题意:超级回文,一个字符串的任意长度的奇数的子串是回文串。

思路:只要任意长度为3的子串是回文串,即可满足题意,故只要奇数位的字母一样,偶数位的字母一样就可以满足题意。

#include<stdio.h>
#include<string.h>
int main()
{
	int T;
	scanf("%d",&T);
	while(T--){
		char str[150];
		scanf("%s",str);
		int len = strlen(str);
		int cnt = 0;
		int num[26];
		int max=-1;
		memset(num,0,sizeof(num));
		for(int i = 0;i <= len-1; i += 2){
			num[str[i]-'a']++;
		}
		for(int i = 0;i <= 25; ++i){
			if(num[i] > max) max = num[i];
		}
		cnt = max;
		max = -1;
		memset(num,0,sizeof(num));
		for(int i = 1;i <= len-1; i += 2){
			num[str[i]-'a']++;
		}
		for(int i = 0;i <= 25; ++i){
			if(num[i] > max) max = num[i];
		}
		cnt += max; 
		printf("%d\n",len-cnt);
	} 
	return 0;
}

猜你喜欢

转载自blog.csdn.net/triple_wdf/article/details/80100686