题目描述-->p1900 自我数

本文转自@keambar

转载已经原作者同意

分析:

     思路还是比较好给出的:
用类似筛选素数的方法筛选自我数。 但是要注意到题目限制的空间仅有4M,不够开10^7 那么大的数组.
于是进一步分析问题我们发现每一次拓展出来的数最多比原数大63! 这是由于最多不过7位数,假设每一位都是9的话,拓展出来的数才大 7*9=63. 所以我们,对拓展出来的数取模,再用数组存下来。 至于输出自我数,经过测试.
在SGU的数据里自我数的答案没有超过10^6
刚好用掉4M的空间 ⊙﹏⊙b汗 最保险的方法还是仅将需要的自我数号码存下来,
排序后用二分查找判断当前找到的数是否是需要存下的.
最后再将存下的数按照读入的顺序输出.

原作者代码

#include<cstdio>
int n, m, k;
bool pd[100];
int f[1000000], tol;
int Find (int x) {
for (k = 0; x != 0; x /= 10)
k += x % 10;
return k;
}
void init() {
int i, j;
tol = 0, j = 0;
for (i = 1; i <= n; i++) {
if (!pd[i % 100]) f[++tol] = i;
else
pd[i % 100] = false;
//这里用了个小技巧,大大减少取模的次数,很容易想明白
if (i % 10 == 0) j = i + Find (i);
else
j += 2;
pd[j % 100] = true;
}
}
int main() {
scanf ("%d%d", &n, &m);
init();
printf ("%d\n", tol);
for (int i = 1; i <= m; i++) {
scanf ("%d", &k);
printf ("%d ", f[k]);
}
return 0;
}

本人辣鸡代码就不放了emmm

应原作者要求:本题亦可以在SGU上找到

//不过,我没有找到链接 emm

[转载]数学【p1900】 自我数的更多相关文章

  1. 洛谷 P1900 自我数

    P1900 自我数 题目描述 在1949年印度数学家D. R. Daprekar发现了一类称作Self-Numbers的数.对于每一个正整数n,我们定义d(n)为n加上它每一位数字的和.例如,d(75 ...

  2. P1900 自我数

    题意: 对于每一个正整数n,我们定义d(n)为n加上它每一位数字的和. 例如,d(75)=75+7+5=87.给定任意正整数n作为一个起点,都能构造出一个无限递增的序列:n, d(n), d(d(n) ...

  3. luogu1900 自我数

    分享一个非正解的做法 本题解内存最低(\(\le1\rm MiB\)) 但是不开O2会tle 思路:每个数字仅会更新出1个新的数字,而且这个新数字比旧数字最多也就大70多.所以这里还是利用" ...

  4. 【转载】nginx 并发数问题思考:worker_connections,worker_processes与 max clients

    注:这个文章主要是作者一直在研究nginx作为http server和反向代理服务器时候所谓最大的max_clients和 worker_connections的计算公式, 其实最后的结论也没有卡上公 ...

  5. 【数学建模】数模day13-灰色系统理论I-灰色关联与GM(1,1)预测

    接下来学习灰色系统理论. 0. 什么是灰色系统? 部分信息已知而部分信息未知的系统,我们称之为灰色系统.相应的,知道全部信息的叫白色系统,完全未知的叫黑色系统. 为什么采用灰色系统理论? 在给定信息不 ...

  6. hdu 5312 Sequence(数学推导——三角形数)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5312 Sequence Time Limit: 2000/2000 MS (Java/Others)  ...

  7. NOIp 数学 (小学奥数)

    Basic knowledge \[ C_n^m=\frac{n!}{m!(n - m)!} \] 快速幂 // Pure Quickpow inline int qpow(int n, int m, ...

  8. [转载]爬虫的自我解剖(抓取网页HtmlUnit)

    网络爬虫第一个要面临的问题,就是如何抓取网页,抓取其实很容易,没你想的那么复杂,一个开源HtmlUnit包,4行代码就OK啦,例子如下: 1 2 3 4 final WebClient webClie ...

  9. 一些对数学领域及数学研究的个人看法(转载自博士论坛wcboy)

    转自:http://www.math.org.cn/forum.php?mod=viewthread&tid=14819&extra=&page=1 原作者: wcboy 现在 ...

随机推荐

  1. Powershell使用真实的对象工作

    Powershell使用真实的对象工作 来源 https://www.pstips.net/powershell-work-with-reallife-objects.html 每一个Powershe ...

  2. HDU 6208 The Dominator of Strings(AC自动机)

    The Dominator of Strings Time Limit: 3000/3000 MS (Java/Others)    Memory Limit: 65535/32768 K (Java ...

  3. [AHOI2013]作业 & Gty的二逼妹子序列 莫队

    ---题面--- 题解: 题目要求统计一个区间内数值在[a, b]内的数的个数和种数,而这个是可以用树状数组统计出来的,所以可以考虑莫队. 考虑区间[l, r]转移到[l, r + 1],那么对于维护 ...

  4. 纯css实现 switch开关

    <!-- 直接看代码,利用了css3兄弟选择器 --><!-- html --> <button class="switch"> <inp ...

  5. 怎么将数据库从Oracle迁移到SQL Server,或从Oracle迁移到MySQL

    有时候我们有迁移数据库的需求,例如从Oracle迁移到SQL Server,或者从MySQL迁移到Oracle. 很多江湖好汉一时不知如何手工操作,所幸的是Navicat提供了迁移的自动化操作界面. ...

  6. How to turn off the binary log for mysqld_multi instances?

    Q: MySQL supports running multiple mysqld on the same server. One of the ways is to use mysqld_multi ...

  7. poj 2104 (划分树模板)

    Description You are working for Macrohard company in data structures department. After failing your ...

  8. mysql的对象

      mysql 常见的数据对象有哪些: DataBase/Schema Table Index View/Trigger/Function/Procedure   多Database用途: 业务的隔离 ...

  9. Js+CSS3实现手风琴效果

    效果截图: HTML代码: <div id="container"> <img src="images/photo01.jpg" alt=&q ...

  10. c#之字符串函数

    1.常用的字符串函数 Compare 比较字符串的内容,考虑文化背景(场所),确定某些字符是否相等 int Compare(string str1,string str2) int Compare(s ...