HDU 1058 Humble Numbers(DP,数)
题意 所有只能被2,3,5,7这4个素数整除的数称为Humble Number 输入n 输出第n个Humble Number
1是第一个humble number 对于一个Humble Number a 有2*a,3*a,5*a,7*a都是Humble Number 可以以1为基数 依次展开即可得到一定范围内的Humble Number 用i,j,k,l分别记录 2,3,5,7分别乘到了第几个Humble Number 当前在计算第cnt个Humble Number 那么有 hum[cnt] = min ( hum[i] * 2, hum[j] * 3, hum[k] * 5, hum[l] * 7) 然后对应min的i或j或k或l就加1 当cnt到达了n 结果就出来了
#include<cstdio>
#include<algorithm>
using namespace std;
const int N = 5843;
int hum[N], cnt, n;
int main()
{int i = 1, j = 1, k = 1, l = hum[1] = 1;for (cnt = 2; cnt < N; ++cnt){hum[cnt] = min ( min(hum[i] * 2, hum[j] * 3), min (hum[k] * 5, hum[l] * 7));if (hum[cnt] == hum[i] * 2) ++i;if (hum[cnt] == hum[j] * 3) ++j;if (hum[cnt] == hum[k] * 5) ++k;if (hum[cnt] == hum[l] * 7) ++l;}while (scanf ("%d", &n), n){printf ("The %d", n);if (n % 100 != 11 && n % 10 == 1) printf ("st ");else if (n % 100 != 12 && n % 10 == 2) printf ("nd ");else if (n % 100 != 13 && n % 10 == 3) printf ("rd ");else printf ("th ");printf ("humble number is %d.\n", hum[n]);}return 0;
}
Humble Numbers
Write a program to find and print the nth element in this sequence
转载于:https://www.cnblogs.com/acvay/p/3947286.html
HDU 1058 Humble Numbers(DP,数)相关推荐
- (HDU)1058 --Humble Numbers( 丑数)
题目链接:http://vjudge.net/problem/HDU-1058 这题有点难度,自己写了半天依旧TLE,参考了其他人的博客. http://blog.csdn.net/pythonfx/ ...
- hdu 1058 Humble Numbers
状态转移方程:F(n)=min(F(i)*2,F(j)*3,F(k)*5,F(m)*7) (n>i,j,k,m) 特别的:i,j,k,m 只有在本项被选中后才移动 题目还要注意的一点是输出问题 ...
- usaco ★Humble Numbers 丑数
★Humble Numbers 丑数 对于一给定的素数集合 S = {p1, p2, ..., pK}, 来考虑那些质因数全部属于 S 的数的集合.这个集合包括,p1, p1p2, p1p1, 和 p ...
- Humble Numbers(丑数) 超详解!
给定一个素数集合 S = { p[1],p[2],...,p[k] },大于 1 且素因子都属于 S 的数我们成为丑数(Humble Numbers or Ugly Numbers),记第 n 大的丑 ...
- zoj1095 Humble Numbers(DP)
/* 简单DP:每次将求得的值分别乘以2,3,4,7,然后利用插入排序插入到数据序列中 保证数据的递增序,最终到达结束状态. */ View Code 1 #include <iostr ...
- 【HDOJ】1058 Humble Numbers
简单题,注意打表,以及输出格式.这里使用了可变参数. 1 #include <stdio.h> 2 3 #define MAXNUM 5845 4 #define ANS 20000000 ...
- HDU 1058(打表)
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1058 Humble Numbers Time Limit: 2000/1000 MS (Java/O ...
- Humble Numbers (谦卑数 || 丑数)
Humble Numbers 题目来源:https://vjudge.net/contest/278033#problem/B || http://acm.hdu.edu.cn/showproblem ...
- BZOJ 1662: [Usaco2006 Nov]Round Numbers 圆环数(数位DP+恶心细节)
BZOJ 1662: [Usaco2006 Nov]Round Numbers 圆环数 Time Limit: 5 Sec Memory Limit: 64 MB Description 正如你所知 ...
- HDU 1492 The number of divisors(约数) about Humble Numbers(数论,简单约数)
The number of divisors(约数) about Humble Numbers Time Limit: 2000/1000 MS (Java/Others) Memory Lim ...
最新文章
- Win10 15063 开始运行不保存历史记录原因和解决方法
- 网站微信登录授权 ASP.NET
- 安装kibana,X-pack和elasticsearch插件的全过程
- 1013 Battle Over Cities
- 利用学习率衰减找到最优结果(基于Iris数据集)
- TCP协议疑难杂症全景解析|硬核
- 技术虚拟化人才实在化--3月19日西安建筑科技大学讲座
- eclipse中anroid adk添加
- jvm系列(九):如何优化Java GC
- 找取照片上的25个特征点,并保存结果
- 文件压缩 Huffman编码 (java)
- G1垃圾收集器之对象分配过程
- 大数据之-Hadoop之HDFS_HDFS的内容介绍---大数据之hadoop工作笔记0047
- ASP.NET和ASP程序防止在IE中进行缓存
- cmd后台运行exe_了解运行命令的原理,为QQ制作运行命令启动
- 小米官网竖直导航栏html,手把手教你做小米商城顶部导航栏
- AR图书,看着很美其实有点坑
- vue使用echarts图表渲染异常本地正常,线上时有时无的渲染
- 恒指赵鑫:8.7恒指德指喊单记录与晚盘前瞻
- android6 存储卡异常,手机SD卡无法读取时,如何在手机上修复损坏的SD卡?