usaco ★Humble Numbers 丑数
★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 丑数相关推荐
- Humble Numbers(丑数) 超详解!
给定一个素数集合 S = { p[1],p[2],...,p[k] },大于 1 且素因子都属于 S 的数我们成为丑数(Humble Numbers or Ugly Numbers),记第 n 大的丑 ...
- (HDU)1058 --Humble Numbers( 丑数)
题目链接:http://vjudge.net/problem/HDU-1058 这题有点难度,自己写了半天依旧TLE,参考了其他人的博客. http://blog.csdn.net/pythonfx/ ...
- Humble Numbers (谦卑数 || 丑数)
Humble Numbers 题目来源:https://vjudge.net/contest/278033#problem/B || http://acm.hdu.edu.cn/showproblem ...
- 比紫书优化,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个丑数是什么. 没有输入 输 ...
- 洛谷P1246C语言,codevs1246 丑数
题目描述 Description 对于一给定的素数集合 S = {p1, p2, ..., pK}, 来考虑那些质因数全部属于S 的数的集合.这个集合包括,p1, p1p2, p1p1, 和 p1p2 ...
- AC日记——丑数 codevs 1246
1246 丑数 USACO 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 查看运行结果 题目描述 Description 对于一给定的素数集合 ...
- poj 2247 Humble Numbers
Humble Numbers Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 9453 Accepted: 4440 题目 ...
- 《剑指offer》-- 把数组排成最小的数、丑数、二进制中1的个数、表示数值的字符串、替换空格
一.把数组排成最小的数: 1.题目: 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为 ...
- 【codevs1246】丑数,STL与取模大质数的好处
丑数 USACO 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description 对于一给定的素数集合 S = {p1, p2, -, ...
最新文章
- 洛谷 1359 租用游艇
- SpringBoot: SpringBoot里面创建导出Excel的接口(亲测)
- vue2.0项目中使用Ueditor富文本编辑器应用中出现的问题
- python3-pandas 缺失数据的处理
- Java学习笔记20(String类应用、StringBuffer类、StringBuilder类)
- DW ——随机抽号(七位)(JavaScript)
- python代码_零基础小白必看篇:Python代码注释规范代码实例解析操作(收藏)
- 云计算开源软件有哪些?
- python实践答辩ppt_看完这篇Python操作PPT总结,从此使用Python玩转Office全家桶没压力!...
- CentOS6.5 安装并配置vsftpd
- debloater手机版apk_会议管家apk下载-会议管家云平台v1.0.0手机版下载
- python七种数据类型
- 微信语音怎么转发?微信转发语音居然是这样做的…
- 如何解决“这台电脑上已经安装了更高版本的Bonjour”
- 图像处理之双线性插值法
- IOS企业应用出现无法验证,需要网络连接以在这台iPad上验证。接入互联网并重试
- go kegg_GO分析和KEGG分析都是啥?
- Linux挂载msdos分区,磁盘构造/msdos分区(fdisk)格式化(mkfs)和挂载
- 转:量化投资新手指南-初识量化交易
- JUnit5中@ParameterizedTest 处理 @CvsSource中的空值
热门文章
- 快速访问github镜像 wiki镜像重点_github问题小结
- python路径拼接os.path.join()函数的用法
- 超车新势力齐聚港股,谁主沉浮?
- 人工智能训练云燧T10
- 空间点像素索引(三)
- 2021年大数据Hadoop(十二):HDFS的API操作
- 2021年大数据Flink(二十二):Time与Watermaker
- python raw_input 与 input 的区别
- Subscriber class xxx ,xx already registered to event
- Failed to resolve:com.android.support:appcompat-v7:报错处理