1 条题解

  • 0
    @ 2025-10-10 15:45:26

    C :

    #include<stdio.h>
    
    void main(){
    	int i,g,s,b,q,m,n;
    	
    	for(i=1000;i<=9999;i++){
    		g=i%10;
    		s=i/10%10;
    		b=i/100%10;
    		q=i/1000;
    		m=s*10+g;
    		n=q*10+b;
    		if(i==(m+n)*(m+n)){
    			printf("%d\n",i); 
    		}
    	}
    
    }
    

    C++ :

    #include <iostream>  
    #include<math.h>
    using namespace std;  
    int main(){  
       int i;
       for(i = 1000;i <= 9999;i++)
       { 
         int a = i / 1000;
         int b = i / 100 % 10;
         int c = i / 10 % 10;
         int d = i % 10;
         int e = a *10 + b;
    int f = c *10 + d;
    if((e + f) *(e + f)  == i){ 
       cout<<i<<endl;
    }
       }
       return 0;  
      } 
    
    

    Pascal :

    var i,a,b:integer;
    begin
        i := 1000;
        for i := 1000 to 9999 do
        begin
           a := i div 100;
           b := i mod 100;
           if (a + b) * (a + b) = i then
           writeln(i);
        end;
    end.
     
    

    Java :

    public class Main {
    			 public static void main(String[] args) {
    				
    				   for (int j=1000; j<=9999; j++) { 
    					   int a=j%10000/1000;
    					   int b=j%1000/100;
    					   int c=j%100/10;
    					   int d=j%10;
    					   
    					   if(((a*10+b)+(c*10+d))*((a*10+b)+(c*10+d))==(a*1000+b*100+c*10+d)) {
    						    System.out.println(j);   
    					   }
    					     
          }
    				  
     }
    }
    

    Python :

    for n in range (1000, 10000):
        a = n // 1000;
        b = n // 100 % 10;
        c = n // 10 % 10;
        d = n % 10;
        if (a*10 + b +c * 10 + d )*(a*10 + b +c * 10 + d)== a * 1000 +b * 100+ c *10 +d:
            print(a * 1000 +b * 100+ c *10 +d)
    
    • 1

    信息

    ID
    83
    时间
    1000ms
    内存
    32MiB
    难度
    (无)
    标签
    递交数
    0
    已通过
    0
    上传者