2 条题解

  • 0
    @ 2025-11-21 19:41:23

    、、78

    • -1
      @ 2023-3-13 11:08:33

      C :

      #include <stdio.h>
      #include <string.h>
      #include <math.h>
      int main(void)
      {
      	int x,y,num,ping,n;
      	int i,j,k,m,count;
      	int a[100];
      	scanf("%d %d",&x,&y);
      	for(i=x;i<=y;i++)
      	{
      		count=0; 
      		k=0;
      		if(pow(i,2)<=10000000&&pow(i,2)>=1000000)
      		{
      			ping=pow(i,2);
      			while(ping!=0)
      			{
      			a[k]=ping%10;
      			ping=ping/10;
      			k++;	
      			}
      		}
      		for(m=0;m<k;m++)
      		{
      			for(n=0;n<k;n++)
      			{
      				if(a[n]==a[m])
      				{
      					count++;
      				}
      			}
      		}
      		if(count==7)
      		{
      			printf("%d\n",i);
      		}
      	}
      	return 0;
      }
      

      C++ :

      #include<bits/stdc++.h>
      using namespace std;
      int main(){
      	int x,y,i,j,z,s,c;
      	char a[8];
      	cin>>x>>y;
      	for(i=x;i<=y;i++){
      		c=0;
      		s=i*i;
      		sprintf(a,"%d",s);
      		for(j=0;j<6;j++){
      			for(z=j+1;z<7;z++) if(a[j]==a[z]){
      					c++;
      					break;
      			}		
      		}
      		if(c==0) cout<<i<<endl;
      	}
      }
      

      Python :

      #判断数字是否7位数,传入的n默认是整数
      def checkNumSeven(n):
          return len(str(n)) == 7;
      
      # 判断数字是否不相同,传入的n默认是整数
      def checkDifference(n):
          n = str(n)
          s = set(n)
          return len(n) == len(s); 
      
      x ,y = map(int,input().split())
      for i in range(x,y + 1):
         if checkNumSeven(i * i) and checkDifference(i * i):
             print(i)
      
      • 1

      信息

      ID
      1374
      时间
      1000ms
      内存
      64MiB
      难度
      10
      标签
      递交数
      5
      已通过
      2
      上传者