zoukankan      html  css  js  c++  java
  • 测试你是否和LTC水平一样高-hdu-1407

    测试你是否和LTC水平一样高

    Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
    Total Submission(s): 10505    Accepted Submission(s): 3413

    Problem Description

    大家提到LTC都佩服的不行,不过,如果竞赛只有这一个题目,我敢保证你和他绝对在一个水平线上!
    你的任务是:
    计算方程x^2+y^2+z^2= num的一个正整数解。

     

     

    Input

    输入数据包含多个测试实例,每个实例占一行,仅仅包含一个小于等于10000的正整数num。

     

     

    Output

    对于每组测试数据,请按照x,y,z递增的顺序输出它的一个最小正整数解,每个实例的输出占一行,题目保证所有测试数据都有解。

     

     

    Sample Input

    3

     

     

    Sample Output

    1 1 1

     

     

    Author

    lcy

    解题思路:

      用三个for循环即可,但需要注意的是,题目要求的是正整数解,所以不能有0;

    程序代码:

    错误代码:

    /*#include<stdio.h>

    int main()

    {

        int n,x,y,z,a[3][3]={0},i;

        while(scanf("%d",&n)!=EOF)

        {

         for(x=1,i=0;x<102;x++)

          for(y=1;y<102;y++)

           for(z=1;z<102;z++)

             if(x*x+y*y+z*z==n)

             {

             //printf("%d %d %d ",x,y,z);

              a[i][i]=x;a[i][i+1]=y;a[i][i+2]=z;i++;continue;

             }

             printf("%d %d %d ",a[0][0],a[0][1],a[0][2]);

        }

        return 0;

    }*/

    #include<stdio.h>

    int main()

    {

        int n,x,y,z,i;

        while(scanf("%d",&n)!=EOF)

        {

         i=0;

         for(x=1;x<102;x++)          //题目要求必须是正整数解,所以从 1 开始

          {

           for(y=1;y<102;y++)

           {

            for(z=1;z<102;z++)

             {

              if(x*x+y*y+z*z==n)        //判断是否满足方程

               {printf("%d %d %d ",x,y,z);i=1;}     //输出满足的第一组解,并且  把变量赋值 1

               if(i==1)

               break;                                    //已经找到第一组解,跳出循环

               }

               if(i==1)

               break;                                    //已经找到第一组解,跳出循环 

             }

             if(i==1)

               break;                                      //已经找到第一组解,跳出循环

            }

          }

          return 0;

    }

  • 相关阅读:
    单例模式
    C++中迭代器原理、失效和简单实现
    C++中静态成员变量要在类外部再定义或初始化的原因
    idea maven javaweb项目迁移时的maven和版本报错问题解决(可解决同类错误)
    java 继承类之后,访问不到超类的属性的原因及解决方法
    spring boot admin
    javaweb 报表生成(pdf excel)所需要用到的技术和思路
    团队合作开发git冲突解决方案 Intellij IDEA
    【项目管理】 使用IntelliJ IDEA 将项目发布(提交)到GitLab
    IDEA/Git 设置多个push远程仓库或者同时提交多个push仓库
  • 原文地址:https://www.cnblogs.com/zhouhongweihpu/p/3226542.html
Copyright © 2011-2022 走看看