zoukankan      html  css  js  c++  java
  • 1053 笨小猴

    1053 笨小猴

     

    2008年NOIP全国联赛提高组

     时间限制: 1 s
     空间限制: 128000 KB
     题目等级 : 白银 Silver
     
     
     
    题目描述 Description

    笨小猴的词汇量很小,所以每次做英语选择题的时候都很头疼。但是他找到了一种方法,经试验证明,用这种方法去选择选项的时候选对的几率非常大!

    这种方法的具体描述如下:假设maxn是单词中出现次数最多的字母的出现次数,minn是单词中出现次数最少的字母的出现次数,如果maxn-minn是一个质数,那么笨小猴就认为这是个Lucky Word,这样的单词很可能就是正确的答案。

    输入描述 Input Description

    输入文件word.in只有一行,是一个单词,其中只可能出现小写字母,并且长度小于100。

    输出描述 Output Description

    输出文件word.out共两行,第一行是一个字符串,假设输入的的单词是Lucky Word,那么输出“Lucky Word”,否则输出“No Answer”;

    第二行是一个整数,如果输入单词是Lucky Word,输出maxn-minn的值,否则输出0。

    样例输入 Sample Input

    样例一

    error

    样例二

    olympic

    样例输出 Sample Output

    样例一

    Lucky Word

    2

    样例二

    No Answer

    0

    数据范围及提示 Data Size & Hint
     

    分类标签 Tags 点此展开 

     
    #include<cstdio>
    #include<cmath>
    #include<cstring>
    #include<iostream>
    using namespace std;
    #define N 201
    char s[N];
    int a[N],maxn,minn=0x7fffffff;
    inline bool pd(int x){
        if(x<2) return 0;
        for(int i=2;i<sqrt(x);i++) if(x%i==0) return 0;
        return 1;
    }
    int main(){
        scanf("%s",s);
        for(int i=0;i<strlen(s);i++)a[s[i]]++;
        for(int i='a';i<='z';i++) maxn=max(maxn,a[i]);
        for(int i='a';i<='z';i++) if(!a[i]) a[i]=minn;
        for(int i='a';i<='z';i++) minn=min(minn,a[i]);
        pd(maxn-minn)?printf("%s
    %d
    ","Lucky Word",maxn-minn):puts("No Answer
    0");
        return 0;
    }
  • 相关阅读:
    R语言入门视频笔记--2--一些简单的命令
    Java 虚拟机内存优化
    Apollo 配置中心
    Apollo本地缓存文件
    SpringBoot 远程调试
    SpringCloud微服务架构下 部署在ECS上 403
    Nginx 常用命令
    阿里云数据库Redis版 ERR invalid password
    Apollo配置中心搭建
    Gateway 访问超时 返回504
  • 原文地址:https://www.cnblogs.com/shenben/p/5716357.html
Copyright © 2011-2022 走看看