#include <queue>
#include<iostream>
using namespace std;
void main()
{
queue<int>triqueue;
queue<int>fivqueue;
queue<int>sevqueue;
triqueue.push(3);
fivqueue.push(5);
sevqueue.push(7);
int num = 40;
int i = 0;
while(i < num)
{
int minvalue = 1e7;
int minIndex = 0;
if(!(triqueue.empty()) && minvalue > triqueue.front())
{
minvalue = triqueue.front();
minIndex = 0;
}
if(!(fivqueue.empty()) && minvalue > fivqueue.front())
{
minvalue = fivqueue.front();
minIndex = 1;
}
if(!(sevqueue.empty()) && minvalue > sevqueue.front())
{
minvalue = sevqueue.front();
minIndex = 2;
}
cout<<minIndex<<" "<<minvalue<<endl;
if(minIndex == 0)
{
fivqueue.push(triqueue.front()*5);
sevqueue.push(triqueue.front()*7);
triqueue.push(triqueue.front()*3);
triqueue.pop();
}
if(minIndex == 1)
{
sevqueue.push(fivqueue.front()*7);
fivqueue.push(fivqueue.front()*5);
fivqueue.pop();
}
if(minIndex == 2)
{
sevqueue.push(sevqueue.front()*7);
sevqueue.pop();
}
i++;
}
}
类 丑数
最新推荐文章于 2024-09-13 06:30:00 发布