Openjudge2729 Blah数集(单调队列)
2729:Blah数集
- 总时间限制:
- 3000ms
- 内存限制:
- 65536kB
- 描述
-
大数学家高斯小时候偶然间发现一种有趣的自然数集合Blah,对于以a为基的集合Ba定义如下:
(1) a是集合Ba的基,且a是Ba的第一个元素;
(2)如果x在集合Ba中,则2x+1和3x+1也都在集合Ba中;
(3)没有其他元素在集合Ba中了。
现在小高斯想知道如果将集合Ba中元素按照升序排列,第N个元素会是多少? - 输入
- 输入包括很多行,每行输入包括两个数字,集合的基a(1<=a<=50))以及所求元素序号n(1<=n<=1000000)
- 输出
- 对于每个输入,输出集合Ba的第n个元素值
- 样例输入
-
1 100 28 5437
- 样例输出
-
418 900585
如果你和我一样机智,你就直接看代码吧
#include<iostream> using namespace std; int a,n,head1,head2,tail,que[1000001]; void Blah() {while(1){int x=que[head1]*2+1,y=que[head2]*3+1;if(x>y)que[++tail]=y,head2++;//把较小的存到队列中,较大的再参与下一轮循环else if(x<y)que[++tail]=x,head1++;//同理else if(x==y){que[++tail]=x;head1++;head2++;}if(tail>=n){cout<<que[n]<<endl;return;}} } int main() {while(cin>>a>>n){head1=1,head2=1,tail=1;que[1]=a;Blah();}return 0; }
转载于:https://www.cnblogs.com/thmyl/p/6194719.html
Openjudge2729 Blah数集(单调队列)相关推荐
- 1333:【例2-2】Blah数集 一本通 队列
1333:[例2-2]Blah数集 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 7927 通过数: 4111 [题目描述] 大数学家高斯小时候偶然间发现 ...
- C++3.4数据结构之队列基础+blah数集题解
C++3.4数据结构之队列基础+blah数集题解 队列(queue)是一种限定在一端进行插入,另一端删除的特殊线性表 . 就像排队买东西一样, 队列的出队就像排在前面的人买完东西后离开(删除). 队列 ...
- 队列做题:1333:Blah数集(单调队列);1334:围圈报数
1333:Blah数集(单调队列) 又是一种奇怪的数据结构(算法),见得太少了. 注意:不是优先队列(堆)哟!!!. 注意:集合中的元素不可以重复!!!. 讲解: https://blog.csdn. ...
- NOI 3.4 队列 2729:Blah数集(单调队列)
题目来源:http://noi.openjudge.cn/ch0304/2729/ 2729:Blah数集 总时间限制: 3000ms 内存限制: 65536kB 描述 大数学家高斯小时候偶然 ...
- 信息学奥赛一本通 1333:【例2-2】Blah数集 | OpenJudge NOI 3.4 2729:Blah数集
[题目考点] 1. 队列 [解题思路] 要填入Blah数集的一共有两类数 第一类:由2x+1生成的数 第二类:由3x+1生成的数 那么开两个队列q2与q3,分别存储由2x+1和3x+1生成的数字.这两 ...
- [线段树 标记永久化 单调队列] BZOJ 1171 大sz的游戏 BZOJ 2892 强袭作战
很好的题解:http://blog.sina.com.cn/s/blog_76f6777d0101dizp.html "考虑裸的n^2暴力dp. dp[i]=min(dp[j])+1 ( d ...
- 2729:Blah数集
2729:Blah数集 总时间限制: 3000ms 内存限制: 65536kB 描述 大数学家高斯小时候偶然间发现一种有趣的自然数集合Blah,对于以a为基的集合Ba定义如下: (1) a是集合Ba的 ...
- 单调队列多重背包时间复杂度O(vn)
版权声明:本文为博主原创文章,未经博主允许不得转载. 多重背包问题: 有N种物品和容量为V的背包,若第i种物品,容量为v[i],价值为w[i],共有n[i]件.怎样装才能使背包内的物品总价值最大? 网 ...
- 洛谷 P2219修筑绿化带 二维单调队列~
题目链接:https://www.luogu.org/problem/P2219 emmm调了一个上午+中午,fan 题意:从N*M的中找到一个a*b的大矩形和减去a*b中的一个与之不重边界的c*d的 ...
最新文章
- Matlab学习笔记——文本文件的读写
- Linux vim中使用计算器
- kafka原理_kafka入门(原理搭建简单使用)
- 机器学习中规则化和模型选择知识
- 重新记录一下微信后台的配置
- 很不错的Windows 控件 Developer Express Inc.NET
- ASP.NET Forms权限验证
- linux上ftp和lftp冲突,Linux FTP客户端 Lftp 使用方法,该如何解决
- ASP.NET2.0登陆控件的使用(常见的三种方法)
- cms不支持mysql_CMS不要让MySQL为你流泪
- 漫画网站java_基于jsp的漫画网站-JavaEE实现漫画网站 - java项目源码
- 抓住暴涨点,通达信洗盘回调介入指标公式图解
- 51单片机智能温控风扇
- 虚拟化技术(一)——虚拟化简介
- OpenShift架构
- 浙大程序员甘愿放弃三万月薪跑滴滴,自称开心比什么都好
- [生而为人-思考] Knowledge Cooking -3rd 分享会记录
- 睡眠 应该用 a加权 c加权_创3年新高的创业板,应该如何选择
- PC微信逆向--定位备份sqlite数据库相关函数
- 掌财社:前端接口怎么实现canvas动态图形效果?方法详情!
热门文章
- python开发工程师面试题-一名python web后端开发工程师的面试总结
- python数据分析的主要流程-KNIME + Python = 数据分析+报表全流程
- python教程视频在线-微软再推免费在线Python教程 包含20个视频
- python语言自学-为什么建议大家都学习Python语言?原因在这
- python教程第四版pdf下载-笨办法学python第四版 电子书(pdf格式)
- python读法1002python读法-Python教程之绘制Mandelbrot集合
- python读取文件第n行-python读取文件的前几行
- python画笑脸图案-如何让这些代码中的一个在窗口中绘制不同大小的笑脸?
- python画图哆啦a梦-【Python】绘制哆啦A梦
- python3.7.2安装-CentOS 7中Python3.7.2的安装