[Blue Bridge Cup 2015 Preliminary] Wonderful numbers

Insert picture description here
Note that this is 0-9, don’t think of it as 1-10

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

int vis[11]={
    
    0};
int n[11]={
    
    0};

int bo(int a,int b,int t){
    
    
	memset(n,0,sizeof(n));
	memset(vis,0,sizeof(vis));
	int k=0,i;

	while(a!=0){
    
    
		n[k]=a%10;
		a=a/10;
		k++;
	}
	while(b!=0){
    
    
		n[k]=b%10;
		b=b/10;
		k++;
	}
	for(i=0;i<10;i++){
    
    
		vis[n[i]]=1;
	}
	
	for(i=0;i<10;i++){
    
    
		if(vis[i]==0)
			return 0;
	}
	return 1;
}
int main(){
    
    
	int i,a,b;
	for(i=10;i<100;i++){
    
    
		a=pow(i,2);
		b=pow(i,3);
		if(bo(a,b,i)==1){
    
    
			printf("%d\n",i);
			return 0;
		}
	}
}

Guess you like

Origin blog.csdn.net/banxiaCSDN/article/details/112730461
Recommended