Blash数集这道题是小酱我在期中考试的时候做的,这道题是队列里一道非常经典的,堪比约瑟夫问题,今天我们就来简单了解一下它:
题目描述:
大数学家高斯小时候偶然间发现一种有趣的自然数集合Blah,对应以a为基的集合Ba定义如下:
(1)a是集合Ba的基,且a是Ba的第一个元素;
(2)如果x在集合Ba中,则2x+1和3x+1也都在集合Ba中;
(3)没有其他元素在集合Ba中了。
现在小高斯想知道如果将集合Ba中元素按照升序排列,第n个元素会是多少?
说实话,小酱我第一眼直接看懵(TAT)队列题还要用集合?!??!只能说我太难了~~
但后来发现并不是这么回事,实际上,遇到这种新无厘头题,首先先写一大堆头文件,你知道的都写上,写完以后如果还没有思路再去写一些“计算a+b/c的值”,“输出Hello,World”这样的题,以捋一捋思路(真正OI时不要这样做),说不定写写就出来了。
样例输人输出也还行,数据也不是很大,
In:
1 100
28 5437
Out:
418
900585
1<=n<=1000000,1<=a<=50
CCF NOI的官方题库上(oj.noi.cn)给的时间限制是1000ms,内存超级大,262144个KB,没办法,谁让是CCF的呢?~
样例代码:
#include<iostream>
#include<cstdio>
#i