zoukankan      html  css  js  c++  java
  • 洛谷-求同构数的个数-NOIP2013提高组复赛

    题目描述 Description

    所谓同构数是指这样的数,即它出现在它的平方数的右端。例如,5的平方是25 (即5×5=25),5是25右端的数,那么5就是同构数。又如,25的平方是625(即25×25=625),同理25也是同构数。找出通过键盘输入的两个正整数N和M之间同构数的个数。
     输入输出格式 Input/output
    输入格式:
    一行,任意给定的两个正整数N,M
    输出格式:
    一个正整数,表示[N,M]之间同构数的个数。
     输入输出样例 Sample input/output
    样例测试点#1

    输入样例:

    4 10

    输出样例

    2

    说明 description

    对于100%的数据:(0<N<M≤10000)
     
    思路:这题较为简单,循环区间中的每个数,平方后保留后几位(根据数的位数决定),判断相同计数器++即可;
     
    代码如下:
     1 #include <stdio.h>
     2 int fun(int a)//传过来一个数,传出10的位数次方  
     3 {
     4     int i,k=1;
     5     int ans=0;
     6     while(a>0)//统计位数 
     7     {
     8         ans++;
     9         a=a/10;
    10     }    
    11     for(i=0;i<ans;i++)//10的位数次方 
    12     {
    13         k=k*10;
    14     }
    15     return k;
    16 }
    17 int main()
    18 {
    19     int ans=0,i;
    20     int a,b;
    21     int p;
    22     scanf("%d%d",&a,&b);
    23     for(i=a;i<=b;i++)
    24     {
    25         p=i*i;
    26         if(i==p%fun(i)) ans++;
    27     }
    28     printf("%d
    ",ans);
    29     return 0;
    30 }
  • 相关阅读:
    ubuntu安装后做得几件事情 【robby_chan】
    malloc函数的一种简单的原理性实现[转]
    了解B树 B+树
    win下格式转为utf8 编码 转码
    log4j2与slf4j日志桥接
    java获取当前行数
    java获取服务器ip地址解决linux上为127.0.0.1的问题
    log4j2的基本使用
    navicator使用之mysql
    log4j与log4j2日志文件的操作
  • 原文地址:https://www.cnblogs.com/geek-007/p/5171112.html
Copyright © 2011-2022 走看看