★Humble Numbers 丑数
对于一给定的素数集合 S = {p1, p2, ..., pK},
来考虑那些质因数全部属于 S 的数的集合.这个集合包括,p1, p1p2, p1p1, 和 p1p2p3 (还有其它).
这是个对于一个输入的 S 的丑数集合.
注意:我们不认为 1 是一个丑数.
你的工作是对于输入的集合 S 去寻找集合中的第 N 个丑数.longint(signed 32-bit)对于程序是足
够的.
PROGRAM NAME: humble
INPUT FORMAT
第 1 行: 二个被空间分开的整数:K 和 N , 1<= K<=100 , 1<= N<=100,000.
第 2 行: K 个被空间分开的整数:集合 S 的元素
SAMPLE INPUT (file humble.in)
4 19
2 3 5 7
OUTPUT FORMAT
单独的一行,写上对于输入的 S 的第 N 个丑数.
SAMPLE OUTPUT (file humble.out)

27

大名鼎鼎的丑数,看了题解。注意一下cnt数组就行了。cnt就相当于你上一次遍历到了第k个丑数那么这次前k个肯定不行了(乘起来小了)。相当于遍历只是省去了遍历前k个的时间而已。

/*
ID: jinbo wu
TASK: humble
LANG: C++
*/
#include<bits/stdc++.h>
using namespace std;
long long  prime[105];
int cnt[105];
long long humble[100005];
#define INF 0x7fffffff
int main()
{int k,n;freopen("humble.in","r",stdin);freopen("humble.out","w",stdout);cin>>k>>n;for(int i=0;i<k;i++)cin>>prime[i];humble[0]=1;for(int i=1;i<=n;i++){long long min=INF;for(int j=0;j<k;j++){while(prime[j]*humble[cnt[j]]<=humble[i-1])cnt[j]++;if(prime[j]*humble[cnt[j]]<min)min=prime[j]*humble[cnt[j]];}humble[i]=min;}cout<<humble[n]<<endl;
}

usaco ★Humble Numbers 丑数相关推荐

  1. Humble Numbers(丑数) 超详解!

    给定一个素数集合 S = { p[1],p[2],...,p[k] },大于 1 且素因子都属于 S 的数我们成为丑数(Humble Numbers or Ugly Numbers),记第 n 大的丑 ...

  2. (HDU)1058 --Humble Numbers( 丑数)

    题目链接:http://vjudge.net/problem/HDU-1058 这题有点难度,自己写了半天依旧TLE,参考了其他人的博客. http://blog.csdn.net/pythonfx/ ...

  3. Humble Numbers (谦卑数 || 丑数)

    Humble Numbers 题目来源:https://vjudge.net/contest/278033#problem/B || http://acm.hdu.edu.cn/showproblem ...

  4. 比紫书优化,14行代码AC——例题 5-7 丑数(Ugly Numbers,UVa 136)——解题报告

    题意: 丑数是一些因子只有2,3,5的数.数列1,2,3,4,5,6,8,9,10,12,15--写出了从小到大的前11个丑数,1属于丑数.现在请你编写程序,找出第1500个丑数是什么. 没有输入 输 ...

  5. 洛谷P1246C语言,codevs1246 丑数

    题目描述 Description 对于一给定的素数集合 S = {p1, p2, ..., pK}, 来考虑那些质因数全部属于S 的数的集合.这个集合包括,p1, p1p2, p1p1, 和 p1p2 ...

  6. AC日记——丑数 codevs 1246

    1246 丑数 USACO  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 钻石 Diamond 题解  查看运行结果 题目描述 Description 对于一给定的素数集合 ...

  7. poj 2247 Humble Numbers

    Humble Numbers Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 9453   Accepted: 4440 题目 ...

  8. 《剑指offer》-- 把数组排成最小的数、丑数、二进制中1的个数、表示数值的字符串、替换空格

    一.把数组排成最小的数: 1.题目: 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为 ...

  9. 【codevs1246】丑数,STL与取模大质数的好处

    丑数 USACO 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description 对于一给定的素数集合 S = {p1, p2, -, ...

最新文章

  1. 洛谷 1359 租用游艇
  2. SpringBoot: SpringBoot里面创建导出Excel的接口(亲测)
  3. vue2.0项目中使用Ueditor富文本编辑器应用中出现的问题
  4. python3-pandas 缺失数据的处理
  5. Java学习笔记20(String类应用、StringBuffer类、StringBuilder类)
  6. DW ——随机抽号(七位)(JavaScript)
  7. python代码_零基础小白必看篇:Python代码注释规范代码实例解析操作(收藏)
  8. 云计算开源软件有哪些?
  9. python实践答辩ppt_看完这篇Python操作PPT总结,从此使用Python玩转Office全家桶没压力!...
  10. CentOS6.5 安装并配置vsftpd
  11. debloater手机版apk_会议管家apk下载-会议管家云平台v1.0.0手机版下载
  12. python七种数据类型
  13. 微信语音怎么转发?微信转发语音居然是这样做的…
  14. 如何解决“这台电脑上已经安装了更高版本的Bonjour”
  15. 图像处理之双线性插值法
  16. IOS企业应用出现无法验证,需要网络连接以在这台iPad上验证。接入互联网并重试
  17. go kegg_GO分析和KEGG分析都是啥?
  18. Linux挂载msdos分区,磁盘构造/msdos分区(fdisk)格式化(mkfs)和挂载
  19. 转:量化投资新手指南-初识量化交易
  20. JUnit5中@ParameterizedTest 处理 @CvsSource中的空值

热门文章

  1. 快速访问github镜像 wiki镜像重点_github问题小结
  2. python路径拼接os.path.join()函数的用法
  3. 超车新势力齐聚港股,谁主沉浮?
  4. 人工智能训练云燧T10
  5. 空间点像素索引(三)
  6. 2021年大数据Hadoop(十二):HDFS的API操作
  7. 2021年大数据Flink(二十二):Time与Watermaker
  8. python raw_input 与 input 的区别
  9. Subscriber class xxx ,xx already registered to event
  10. Failed to resolve:com.android.support:appcompat-v7:报错处理