0
点赞
收藏
分享

微信扫一扫

ZCMU--5084: zbj的字符串(C语言)

眸晓 2022-03-25 阅读 53
c语言

题目描述

zbj 最近很喜欢回文串,回文串的意思就是说,从左往右读和从右往左读是相同的字符串

现在 zbj 有一个字符串,希望将这个字符串变成回文串,他每次可以将这个字符串中的一个字母变成另外一个字母。

请问他最少需要修改几个字母?

输入

输入只有一行,包含一个只有小写字母组成的字符串 s,(|s| <= 10^5)

输出

输出一行,表示最少需要修改的次数

样例输入

abc

样例输出

1

解析:就是首尾往中间逐个比对,有不同计数+1即可

#include <stdio.h>
#include <string.h>
char k[100005];
int main()
{
	int cnt,sum,i,m;
	while(~scanf("%s",k)){
		cnt=strlen(k);
		m=cnt-1;	//尾 
		sum=0;
		for(i=0;i<cnt/2;i++){
			if(k[i]!=k[m]) sum++; //sum表示需要改的次数 
			m--;
		}
		printf("%d\n",sum);
	}
	return 0;
}
举报

相关推荐

0 条评论