`
阿尔萨斯
  • 浏览: 4170810 次
社区版块
存档分类
最新评论

Codeforces 393A Nineteen(水题)

 
阅读更多

题目链接:Codeforces 393A Nineteen


题目大意:给出一个字符串,重排之后问说有多少个nineteen子串。


解题思路:水题,但是要注意细节,现场就被hack了。

首先前一个nineteen末尾的n可以给下一个nineteen用。

其次n的个数小于3的情况。


#include <stdio.h>
#include <string.h>
#include <algorithm>

using namespace std;
const int N = 105;
int c[N];

int main () {
	char str[N];
	gets(str);
	memset(c, 0, sizeof(c));

	int len = strlen(str);
	for (int i = 0; i < len; i++) {
		c[str[i]-'a']++;
	}

	int ans = N;
	ans = min(c['e'-'a'] / 3, ans);
	ans = min(c['i'-'a'], ans);
	ans = min(c['t'-'a'], ans);
	int t = 'n' - 'a';
	if (c[t] >= 3)
		ans = min((c[t] - 3)/2 + 1, ans);
	else ans = 0;
	printf("%d\n", ans);
	return 0;
}



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics