leetcode 313. Super Ugly Number
Posted liuqiujie
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode 313. Super Ugly Number相关的知识,希望对你有一定的参考价值。
https://www.cnblogs.com/grandyang/p/5144918.html
1.
class Solution { public: int nthSuperUglyNumber(int n, vector<int>& primes) { vector<int> res(1,1),idx(primes.size(),0); while(res.size()<n) { vector<int> tmp; int mn=INT_MAX; for(int i=0;i<primes.size();++i) tmp.push_back(res[idx[i]]*primes[i]); for(int i=0;i<primes.size();++i) mn=min(mn,tmp[i]); for(int i=0;i<primes.size();++i) if(tmp[i]==mn) {++idx[i];} res.push_back(mn); } return res.back(); } };
2.
class Solution { public: int nthSuperUglyNumber(int n, vector<int>& primes) { vector<int> res(1,1),idx(primes.size(),0); for(int i=1;i<n;++i) { res.push_back(INT_MAX); for(int j=0;j<primes.size();++j) res[i]=min(res[i],res[idx[j]]*primes[j]); for(int j=0;j<primes.size();++j) if(res[i]==res[idx[j]]*primes[j]) ++idx[j]; } return res.back(); } };
以上是关于leetcode 313. Super Ugly Number的主要内容,如果未能解决你的问题,请参考以下文章
leetcode 313. Super Ugly Number
力不从心 Leetcode(ugly number heap) 263, 264,313
<LeetCode OJ> 26 / 264 / 313 Ugly Number (I / II / III)