zoukankan      html  css  js  c++  java
  • OpenJudge计算概论-求满足条件的3位数

    /*========================================================================
    求满足条件的3位数
    总时间限制:
        1000ms
    内存限制:
        65536kB
    描述
        编写程序,按从小到大的顺序寻找同时符合条件1和2的所有3位数,条件为:
        1.该数为完全平方数
        2.该数至少有2位数字相同
        例如,100同时满足上面两个条件。
    输入
        输入一个数n,n的大小不超过实际满足条件的3位数的个数。
    输出
        输出为第n个满足条件的3位数(升序)
    样例输入
        1
    样例输出
    
        100
    ==========================================================================*/
     1 #include<iostream>
     2 #include<math.h>
     3 using namespace std;
     4 int main()
     5 {
     6     int n;
     7     int i,t;
     8     int x,y,z;
     9     int xx,yy,zz;
    10     cin>>n;
    11     for(i=100;i<1000;i++)  //检查每一个三位数,判断其是否符合要求
    12     {
    13         t=sqrt(i);
    14         if(t*t==i)//这个if语句的条件语句是判断i是否完全平方数 
    15         {//下面把i的各个位拆开来检查有否相同位。 
    16             x=i/100;
    17             y=(i-x*100)/10;
    18             z=i%10;
    19             xx=0;
    20             yy=0;
    21             zz=0;
    22             xx=(x==y);
    23             yy=(x==z);
    24             zz=(y==z);
    25             if(xx+yy+zz>=1)
    26             {
    27                 n--;
    28                 if(n==0)//当发现到第n个满足两个条件的数时停止。 
    29                 {
    30                     cout<<i<<endl;
    31                     break;
    32                 }
    33             }
    34         }
    35     }
    36     return 0;
    37 }
  • 相关阅读:
    maven搭建
    javascript
    FTP工具类
    jsp相关知识
    java mail 邮箱发送
    servlet相关
    hibernate文档
    6月
    Spring AOP 使用总结
    spring事务配置总结
  • 原文地址:https://www.cnblogs.com/huashanqingzhu/p/3465951.html
Copyright © 2011-2022 走看看