U400538 组成回文串 50分!!!
  • 板块题目总版
  • 楼主tysy_020
  • 当前回复3
  • 已保存回复3
  • 发布时间2024/6/3 21:02
  • 上次更新2024/6/4 21:03:35
查看原帖
U400538 组成回文串 50分!!!
1327102
tysy_020楼主2024/6/3 21:02
#include<iostream>
using namespace std;
char s[100005];
int qp[26],qw=0,we=0;
int main()
{
	int n,m;
	cin >> n >> m;
	for(int i=0;i<n;i++)
	{
		cin >> s[i];
		if(s[i]=='a')
			qp[0]++;
		else if(s[i]=='b')
			qp[1]++;
		else if(s[i]=='c')
			qp[2]++;
		else if(s[i]=='d')
			qp[3]++;
		else if(s[i]=='e')
			qp[4]++;
		else if(s[i]=='f')
			qp[5]++;
		else if(s[i]=='g')
			qp[6]++;
		else if(s[i]=='h')
			qp[7]++;
		else if(s[i]=='i')
			qp[8]++;
		else if(s[i]=='j')
			qp[9]++;
		else if(s[i]=='k')
			qp[10]++;
		else if(s[i]=='l')
			qp[11]++;
		else if(s[i]=='m')
			qp[12]++;
		else if(s[i]=='n')
			qp[13]++;
		else if(s[i]=='o')
			qp[14]++;
		else if(s[i]=='p')
			qp[15]++;
		else if(s[i]=='q')
			qp[16]++;
		else if(s[i]=='r')
			qp[17]++;
		else if(s[i]=='s')
			qp[18]++;
		else if(s[i]=='t')
			qp[19]++;
		else if(s[i]=='u')
			qp[20]++;
		else if(s[i]=='v')
			qp[21]++;
		else if(s[i]=='w')
			qp[22]++;
		else if(s[i]=='x')
			qp[23]++;
		else if(s[i]=='y')
			qp[24]++;
		else if(s[i]=='z')
			qp[25]++;
	}
	for(int i=0;i<26;i++)
	{
		if(qp[i]==1||qp[i]%2!=0)
			qw++;
	}
	if(qw>m)
		cout << -1;
	else if(qw==0)
		cout << 0;
	else
	{
		for(int i=1;i<=m;i++)
		{
			qw--;
			if(qw<=m)
			{
				cout << i;
				break;
			}
		}
	}
	return 0;
}
2024/6/3 21:02
加载中...