问题标题: 酷町堂:酷町堂:3974

0
0
已解决
王海成
王海成
初级天翼
初级天翼

题目链接: 酷町堂:3974

3974,20分,超时,代码:

#include<bits/stdc++.h>
using namespace std;

int n;

int pf(int x){
    int sum=1;
    for(int i=1;i<=2;i++){
        sum*=x;
    }
    return sum;
}

int main(){
    cin>>n;
    for(int i=0;i<=n;i++){
        for(int j=0;j<=n;j++){
            for(int k=0;k<=n;k++){
                for(int l=0;l<=n;l++){
                    if(pf(i)+pf(j)+pf(k)+pf(l)==n){
                        cout<<i<<' '<<j<<' '<<k<<' '<<l<<endl;
                        return 0;
                    }
                    //cout<<i<<' '<<j<<' '<<k<<' '<<l<<' '<<pf(i)<<' '<<pf(j)<<' '<<pf(k)<<' '<<pf(l)<<' '<<pf(i)+pf(j)+pf(k)+pf(l)<<endl;
                }
            }
        }
    }
    return 0;
}

 


0
已采纳
李伟宸
李伟宸
中级守护
中级守护

每个循环终点 sqrt(n)

函数不要

if(i*i+j*j+k*k+l*l==n)

我要回答