1316(简单) self number
来源:互联网 发布:淘宝lol代练价格2017 编辑:程序博客网 时间:2024/06/07 11:41
问题描述
1949年,印度数学家D.R. Kaprekar发现了一组名为“自我数字”的数字。对于任何正整数n,定义d(n)为n,加上n的数字的和(d代表数字,这是Kaprekar创造的术语)。
例如,d(75)= 75 + 7 + 5 = 87。给出任何正整数n作为起点,您可以构建无限增序列的整数n,d(n)、d(d(n))、d(d(d(n))),….
例如,如果你从33开始,下一个数字是33 + 3 + 3 = 39,下一个是39 + 3 + 9 = 51,下一个是51 + 5 + 1 = 57,所以你生成了序列
33、39、51、57、69、84、96、111、114、120、123、141、……
n被称为d(n)的生成器。在上面的序列中,33是一个39的生成器,39是一个51的生成器,51是一个57的生成器,等等。
一些数字有多个生成器:例如,101有两个生成器,91和100。一个没有生成器的数字是一个自数。
有13个自我数字小于100:1、3、5、7、9、20、31、42、53、64、75、86和97。
Write a program to output all positive self-numbers less than 10000 in increasing order, one per line
#include"stdio.h"#define N 10001int self[N];int D();int main(){ int i ; D(); for(i = 1; i<=N; i++) { if(!self[i]) printf("%d\n",i); } return 0;}int D(){ int sum; int i,j,flag; for(i = 1; i<=N; i++) { sum = i; flag = i; while(flag!=0) { j= flag%10;//j表示余数 sum = sum+j; flag = flag/10; } self[sum] = 1; } return 1;}
阅读全文
1 0
- 1316(简单) self number
- POJ 1316 Self Number
- poj1316 self number
- POJ1316-Self number
- Self Dividing Number
- Big Number(简单数学题)
- HDU1128 self number("优化"版暴力)
- HDU 1128 求是否self-number
- POJ 1316 Self Numbers (水题)
- poj 1316 Self Numbers(水)
- POJ 1316(Self Numbers) Java
- Guess a number!(判断简单题)
- HDU:1711 Number Sequence(简单KMP)
- hdu 5166 Missing number(简单题)
- sgu 108 self number(数学问题滚动数组)
- POJ 1316 Self Numbers
- pku 1316 Self Numbers
- POJ 1316 Self Numbers
- 多线程的临界区
- C#的三大难点之二:托管与非托管
- POJ 1370 Gossiping 笔记
- 绿色无捆绑大白菜U盘启动盘制作
- 全排列
- 1316(简单) self number
- linux安装文件
- lnmp的缓存
- ReentrantLock原理探究(二)
- 挑战程序竞赛系列(7):2.1一往直前!贪心法(区间)
- STM32 调试记录
- 最近很是迷茫啊
- POJ
- 分享一个gif截图工具