本文主要向大家介绍了C/C++知识点之Self Numbers C语言 UVA640,通过具体的内容向大家展示,希望对大家学习C/C++知识点有所帮助。

In 1949 the Indian mathematician D.R. Kaprekar discovered a class of

numbers called self-numbers. For any positive integer n, define d(n) to

be n plus the sum of the digits of n. (The d stands for digitadition, a

term coined by Kaprekar.) For example, d(75) = 75 + 7 + 5 = 87. Given

any positive integer n as a starting point, you can construct the

infinite increasing sequence of integers n, d(n), d(d(n)), d(d(d(n))),

.... For example, if you start with 33, the next number is 33 + 3 + 3 =

39, the next is 39 + 3 + 9 = 51, the next is 51 + 5 + 1 = 57, and so you

generate the sequence

33, 39, 51, 57, 69, 84, 96, 111, 114, 120, 123, 129, 141, ...

The number n is called a generator of d(n). In the sequence above, 33

is a generator of 39, 39 is a generator of 51, 51 is a generator of 57,

and so on. Some numbers have more than one generator: for example, 101

has two generators, 91 and 100. A number with no generators is a

self-number. There are thirteen self-numbers less than 100: 1, 3, 5, 7,

9, 20, 31, 42, 53, 64, 75, 86, and 97.

Write a program to output all positive self-numbers less than or equal 1000000 in increasing order, one per line.

Sample Output

1

3

5

7

9

20

31

42

53

64

|

|

|

9903

9914

9925

9927

9938

9949

9960

9971

9982

9993

用离线计算的方法,计算出1000000以内的所有非自我数,将这些数筛掉后再从小到大按序输出。

1 //UVA 640

2 #include

3

4 int a[1000001];

5

6 int main(void){

7     int i,b,c;

8     for(i=0;i<=1000000;++i){

9         b=i;c=i;

10         while(c){

11             b+=c%10;

12             c/=10;

13         }

14         a[b]=1;

15     }

16     for(i=1;i<=1000000;++i)

17         if (!a[i]) printf("%d\n",i);

18     return 0;

19 }

View Code

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标编程语言C/C+频道!

c语言self用法,C/C++知识点之Self Numbers C语言 UVA640相关推荐

  1. c语言劝学,《劝学》知识点集锦

    <劝学>知识点集锦 <劝学>是<荀子>一书的首篇,整理了<劝学>的知识点,可以帮助同学们理解课文. 一.基础知识 1.下边加点的字的字形.注音全对的一组 ...

  2. c语言常考易错知识点,C语言中易错点知识点拾遗

    C语言中易错点知识点拾遗 1. 首先,feof()是文件结束检测函数,如果没有结束,返回值是 0,结束了是 1 由于 feof(fp)返回 0 才 是没有结束,所以通常写成 while(!feof(f ...

  3. c语言 逗号表达式的作用,关于c语言逗号表达式的运算规则知识点

    c语言逗号表达式的运算规则 c语言逗号表达式是由左向右进行的:k=3*2=6,K+2=8,表达式返回8. 逗号表达式用法: 当顺序点用,结合顺序是从左至右,用来顺序求值,完毕之后整个表达式的值是最后一 ...

  4. c语言getchar用法_C语言 — 关键字

    几十个关键字不多,用得多了自然会记住,相信大家也不会担心.下面是C语言中的 32 个关键字: 一丶C语言关键字 第一个关键字:auto 用来声明自动变量.可以显式的声明变量为自动变量.只要不是声明在所 ...

  5. c语言指针用法有哪些

    c语言指针用法: 一,指针定义: 指针变量的取值范围取值0~4G,是一种数据类型(无符号整数,代表了内存编号).它可以用来定义变量(与int.long一样),与int.long不同的它存储整数代表了内 ...

  6. C语言STATIC用法

    C语言STATIC用法 转自:http://blog.csdn.net/vagrantisme/article/details/4083722       1. static 变量 静态变量的类型 说 ...

  7. 职坐标c语言,C/C++知识点之hexdump的C语言实现

    本文主要向大家介绍了C/C++知识点之hexdump的C语言实现,通过具体的内容向大家展示,希望对大家学习C/C++知识点有所帮助. 1 void hexdump(char *buf, int len ...

  8. go 正则表达式分组匹配_Go语言正则表达式用法实例小结【查找、匹配、替换等】...

    本文实例讲述了Go语言正则表达式用法.分享给大家供大家参考,具体如下: Go语言的正则表达式使用很简单,示例代码: 复制代码 代码如下: package test import ( "fmt ...

  9. R语言 sub()用法

    R语言 sub()用法 subR语言中的函数用于替换字符串中模式的第一个匹配项.如果有一个字符串元素向量,那么它将替换所有元素中模式的第一个匹配项. 用法: sub(pattern, replacem ...

最新文章

  1. SQLSERVER数据库经常置疑的原因
  2. itools下载链接被360警告:虚假招聘网站
  3. 160个Crackme041之无源码修改Delphi程序
  4. Bootstrap初学(一)
  5. 2018年是VR的新机会吗?
  6. 深度学习(十九)——FCN, SegNet, DeconvNet, DeepLab, ENet, GCN
  7. Mr.J-- HTTP学习笔记(十)-- Cookie机制
  8. 随机采样和随机模拟:吉布斯采样Gibbs Sampling实现文档分类
  9. linux opendir php,php目录遍历函数opendir用法实例
  10. EHOME协议在低功耗场景下使用介绍
  11. 将日期格式格式化为XXXX/XX/XX
  12. MySQL(一)-MySQL安装、数据库的创建和操作、CRUD、MySQL常用函数、MD5加密
  13. 实验6 Matlab数值计算
  14. 按时间抽取的基-2 FFT算法 C语言实现(快速傅里叶变换,蝶形算法)
  15. java main 参数解析_Java Main参数解析(Args4j)
  16. android手机无分区无法刷机,adb sideload 刷机教程:当你手机无法开机,内存里没有ROM时......
  17. 解决out.print()爆红问题
  18. 遭遇Trojan.PSW.OnlineGames、Trojan.HiJack.a、Trojan.PSW.ZhuXian.b等
  19. idea classes: does not exist的一个原因和解决
  20. $reday和window.onload()

热门文章

  1. c++组合 聚合 关联
  2. python进程池:multiprocessing.pool
  3. VS2010发布、打包安装程序超全超详细
  4. java虚拟机常用命令工具
  5. AUTOSAR从入门到精通100讲(六十)-Explanation of Firmware Over-The-Air
  6. 广度优先遍历类似于二叉树的_二叉树的各种遍历方法的简单解释
  7. laravel mysql 锁表_Laravel中MySQL的乐观锁与悲观锁
  8. 前端代码规范网址导航(总结)
  9. 五猴分桃c语言课程设计,c语言程序设计五猴分桃问题实验报告.doc
  10. 什么是URL转发和一个IP建多个Web站点--主机头名法