当前位置: 首页 > article >正文

Fibonacci集合---优先队列+第几小怎么求

优先队列始终弹出最小,注意有重复的也要弹出来

然后3*i+2什么的push进去自动排序

第几小要模拟或举小的例子试一试就知道了

#include<bits/stdc++.h>
using namespace std;
#define N 100011
typedef long long ll;
typedef pair<ll,int> PII;
int n,m,k; 
ll an=1;
int a[6]={1,2,3,5,8};
priority_queue<ll,vector<ll>,greater<ll> > pq;
set<int> b;
int main()
{ 
for(int i=0;i<5;i++)
{
	pq.push(a[i]);
	//int j=a[i];
	//b.insert(j);
	//b.insert(3*j+2);
	//b.insert(5*j+3);b.insert(8*j+5);
}
//set<int>::iterator it;
//for(it=b.begin();it!=b.end();it++) cout<<*it<<" ";
while(an<2020)///为什么an=1且<2020,问就是试出来的,举8看怎么组合是对的 
{
	ll t=pq.top();
	pq.pop();
	//cout<<t;
	while(t==pq.top())
	{
		pq.pop();
	}
	an++;
	pq.push(3*t+2);
	pq.push(5*t+3);
	pq.push(8*t+5);
}
cout<<pq.top();
return 0;
}
///10000 200;


http://www.kler.cn/a/614674.html

相关文章:

  • 【测试】每日3道面试题 3/30
  • TCP的长连接和短连接,以及它们分别适用于什么场合
  • 【neo4j数据导出并在其他电脑导入】
  • Supplements of My Research Proposal: My Perspectives on the RAG
  • 【数据仓库】湖仓一体的核心建模理论
  • Advanced Renamer:批量文件重命名工具
  • 七种驱动器综合对比——《器件手册--驱动器》
  • 转发和重定向的区别详解
  • 【论文阅读】VideoMerge: Towards Training-free Long Video Generation
  • FlexAlign.SpaceBetween`、`FlexAlign.SpaceAround` 和 `FlexAlign.SpaceEvenly三个属性的区别
  • 3.30日 001:中央海岸VS珀斯光荣
  • RBAC后台管理系统
  • SQL注入零基础学习二MYSQL手工注入
  • 晶晨S905L3A(B)-安卓9.0-开启ADB和ROOT-支持IPTV6-支持外置游戏系统-支持多种无线芯片-支持救砖-完美通刷线刷固件包
  • Mem0 Prompt优化
  • Linux进程管理之子进程的创建(fork函数)、子进程与线程的区别、fork函数的简单使用例子、子进程的典型应用场景、父进程等待子进程结束后自己再结束
  • SQL Server 可用性组自动种子设定失败问题
  • vue3项目配置别名
  • 订单超时自动关闭:电商系统的技术难题与解决方案
  • 【深度学习】GAN生成对抗网络:原理、应用与发展