笨小熊

来源:互联网 发布:sql怎么输出变量 编辑:程序博客网 时间:2024/04/26 03:26
/*  * 程序的版权和版本声明部分:  * Copyright (c) 2014,郑州大学SIAS国际学院    * 作    者:  王  杰* 完成日期:2014 年 4 月 8 日  *  * 对任务及求解方法的描述部分:* 输入描述: 略或见注释、总结* 问题描述: 略或见注释、总结* 程序输出: 略或见注释、总结* 问题分析: 略或见注释、总结* 算法设计: 略或见注释、总结*/#include<stdio.h>#include<string.h>#include<algorithm>#include<math.h>int prime(int n){int i;if(n<2)        return 0;          //n为1时考虑到了for(i=2;i*i<=n;i++)if(n%i==0)            return 0;return 1;}//类比打牌的摸牌阶段,key代表待排序的数。插入排序insert sortvoid insert_sort(int arr[],int length){    int i,j,key;    for(j=1;j<length;j++){  //每次循环代表要插入的数key,共有n-1个key需要插入(排序)        //1、这两句是每次key插入之前的准备工作        key=arr[j];        i=j-1;        //2、找出key要插入的位置,并把位置腾出来        while(i>=0 && arr[i]>key){            arr[i+1]=arr[i];            i--;        }        //3、把key插入到合适的位置上        arr[i+1]=key;    }}int main(){    int n,max,min,i,j,sum,t[103],l,p;    char s[103];    scanf("%d",&n);    while(n--){        scanf("%s",s);        l=strlen(s);        for(i=0;i<=l;i++){            sum=0;            for(j=0;j<=l;j++){                if(s[j]==s[i])                    sum++;            }            t[i]=sum;        }        insert_sort(t,l);        p=t[l-1]-t[0];        if(prime(p)){            printf("Lucky Word\n");            printf("%d\n",p);        }        else{            printf("No Answer\n");            printf("0\n");        }    }    return 0;}


运行结果:


总结:基础是关键,在做高级算法的时候,也不要忘记基础!要加快速度了!!

0 0
原创粉丝点击