Get an Even String

#include<iostream>
#include<string>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<queue>
#include<algorithm>
using namespace std;
typedef long long LL;
typedef pair<int, int> PII;
#define x first
#define y second
const int N = 110;
int a[30];
int main() {
	int t;
	cin >> t;
	while(t --)
	{
	   string s;
	   cin >>s;
	   int sum = 0;
	   for(int i = 0; i < s.size(); i ++)
	   {
	   	 a[s[i] - 'a'] ++;
	   	 if(a[s[i] - 'a'] == 2)
	   	 {
			sum += 2;;
			a[s[i] - 'a'] = 0;
			for( int j = 0 ; j <= 27 ; j++ ) a[j] = 0 ;	
		 }
	   }
	   memset(a, 0, sizeof a);
	   cout << s.size() - sum<< endl;
	}
}
 求两个相同字母相距最小的,在删去中间的部分,就是最小删去的数目。正确做法居然这么短,太离谱了
全部评论

相关推荐

不愿透露姓名的神秘牛友
11-27 10:48
点赞 评论 收藏
分享
牛客717484937号:双飞硕没实习挺要命的
点赞 评论 收藏
分享
评论
3
收藏
分享
牛客网
牛客企业服务