1 条题解

  • 0
    @ 2023-11-25 11:52:48
    #include <stdio.h>
    #include <string.h>
    #include <iostream>
    #include <algorithm>
    
    using namespace std;
    int n=1000;
    int prime[10000];
    bool isprime[10000];
    int cnt=0;
    
    void oula(int);
    
    int main(){
    	char a[101];
    	scanf("%s",a);
    	int x=strlen(a);
    	int b[26]={0};
    	for(int i=0;i<x;i++){
    		b[a[i]-'a']++;
    	}
    	sort(b,b+26);
    	int min;
    	for(int i=0;i<26;i++){
    		if(b[i]>0){
    			min=b[i];
    			break;
    		}
    	}
    	int max=b[25];
    	int s=max-min;
    	if(s==0){
    	printf("No Answer\n0");
    	}
    	else{
    	oula(n);
    	int p=0;
    	for(int i=1;i<=n;i++){
    		if(s==prime[i]){
    			p=1;
    			break;
    		}
    	}
    	if(p==1){
    		printf("Lucky Word\n%d",s);
    	}
    	else{
    		printf("No Answer\n0");
    	}
    	}
    	return 0;
    }
    void oula(int){
    	isprime[0]=isprime[1]=1;
    	for(int i=2;i<=n;i++){
    		if(isprime[i]==0){
    			prime[++cnt]=i;
    		}
    		for(int j=1;j<=cnt&&i*prime[j]<=n;j++){
    			isprime[i*prime[j]]=1;
    			if(i%prime[j]==0){
    				break;
    			}
    		}		
    	}
    }
    
    • 1

    信息

    ID
    402
    时间
    1000ms
    内存
    128MiB
    难度
    6
    标签
    (无)
    递交数
    31
    已通过
    10
    上传者