第几个幸运数(stl:优先队列,set)(蓝桥)

https://blog.csdn.net/ryo_218/article/details/84866037

#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<iostream>
#include<algorithm>
#include<string>
#include<vector>
#include<queue>
#include<map>
#include<set>
using namespace std;


priority_queue<long long,vector<long long>,greater<long long> > q;
set <long long> s;



int main(){	
	int ans=-1;
	q.push(1);
	s.insert(1);
	while(1){
		long long n=q.top();
		q.pop();
		ans++;
		if(n==59084709587505) break;
		for(int i=3;i<=7;i+=2){
			long long t=n*i;
			if(!s.count(t)){
				s.insert(t);
				q.push(t);
			}
		}
	}
	cout<<ans<<endl;
} 

猜你喜欢

转载自blog.csdn.net/weixin_43806345/article/details/88557307