NYOJ 62 笨小熊


原题链接

考察对字符串的操作。

将各个字符出现的次数保存到数组中,重复出现的赋值为 ‘.’, 再将数组降序排序,后面就简单了。

附ac代码:

#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stdlib.h>

int cmp(const void *a, const void *b){
	return *(int *)b - *(int *)a;
}

int f(int n){ //判断素数
	if(n < 2) return 0;
	for(int i = 2; i <= sqrt(n); ++i)
		if(n % i == 0) return 0;
	return 1;
}

int main(){
	int t, ok, a[101];
	char s[101];
	scanf("%d", &t);
	while(t-- && scanf("%s", s)){
		memset(a, 0, sizeof(a));
		for(int i = 0; i != strlen(s); ++i){
			if(s[i] == '.') continue;
			++a[i];
			for(int j = i + 1; j != strlen(s); ++j)
				if(s[j] == s[i]){
					++a[i];
					s[j] = '.';
				}
		}
		//排序,降序
		qsort(a, 101, sizeof(int), cmp);
		int i = 0;
		while(i++ != 101)
			if(!a[i]) break;
		--i;
		int x = a[0] - a[i];
		if(f(x)) printf("Lucky Word\n%d\n", x);
		else printf("No Answer\n0\n");
	}
	return 0;
}


优质内容筛选与推荐>>
1、最大熵模型(Maximum Etropy)—— 熵,条件熵,联合熵,相对熵,互信息及其关系,最大熵模型。。
2、HDU-1213-How Many Tables
3、web移动端开发经验总结
4、linux command 2
5、URL传递参数时中文编码问题


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号