超級丑數

題目:

寫一個程序來找第 n 個超級丑數。
超級丑數的定義是正整數并且所有的質數因子都在所給定的一個大小為 k 的質數集合內。
比如給你 4 個質數的集合 [2, 7, 13, 19], 那么 [1, 2, 4, 7, 8, 13, 14, 16, 19, 26, 28, 32] 是前 12 個超級丑數。
注意事項:

  • 永遠都是超級丑數不管給的質數集合是什么。
  • 給你的質數集合已經按照升序排列。
  • 0 < k ≤ 100, 0 < n ≤ 10^6, 0 < primes[i] < 1000

樣例:

給出 n = 6 和質數集合 [2, 7, 13, 19]。第 6 個超級丑數為 13,所以返回 13 作為結果。

思路:

丑數產生的規律:除了第一個數字,其余所有數字都是之前已有數字乘以任意一個在質數數組里的質數得到。
point數組需要好好想想。
clipboard.png

參考答案:

class Solution {
public:/** @param n: a positive integer* @param primes: the given prime list* @return: the nth super ugly number*/int nthSuperUglyNumber(int n, vector<int> &primes) {// write your code hereint len = primes.size();vector<int> point(len,0);//用于保存當前的位置,這個需要仔細想想vector<int> ugly(n,INT32_MAX);//不要用INT16_MAX,有些測試用例過不了ugly[0] = 1;for(int i=1; i<n; i++){for(int j=0; j<len; j++){ugly[i] = min(ugly[i],ugly[point[j]]*primes[j]);}for(int j=0; j<len; j++){if(ugly[i] == ugly[point[j]]*primes[j]){point[j]++;}}}return ugly[n-1];}
};

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/452967.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/452967.shtml
英文地址,請注明出處:http://en.pswp.cn/news/452967.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

為什么要進行個人知識管理(PKM)

21世紀是一個知識爆炸的世紀&#xff0c;知識爆炸是指人類創造的知識,主要是自然科學知識,在短時期內以極高的速度增長起來。是人們對當前大量出現并飛速發展的各種知識現象所進行的夸張和描述。有人綜合計算,全世界的知識總量,七到十年翻一番。這就是風行全球的摩登名詞的意思…

Python中“if __name__=='__main__':”理解與總結

具體詳解參考文獻&#xff1a;https://www.cnblogs.com/chenhuabin/p/10118199.html

python中列表如何比較大小_如何比較python中的列表/列表?

所以你想要兩個項目列表之間的區別。 first_list = [[Test.doc, 1a1a1a, 1111], [Test2.doc, 2b2b2b, 2222], [Test3.doc, 3c3c3c, 3333]] secnd_list = [[Test.doc, 1a1a1a, 1111], [Test2.doc, 2b2b2b, 2222], [Test3.doc, 8p8p8p, 9999], [Test4.doc, 4d4d4d, 4444]] 首先,…

NFC讀卡------ci522

1、NFC及卡片 NFC是近距離無線通訊技術&#xff0c;是一種非接觸式識別和互聯技術&#xff0c;可以在移動設備、消費類電子產品、PC和智能控件工具間進行近距離無線通信。NFC提供了一種簡單、觸控式的解決方案&#xff0c;可以讓消費者簡單直觀地交換信息、訪問內容與服務。 …

java基礎面試題:說說和的區別

&與&&都是邏輯與 不同的是&左右兩邊的判斷都要進行&#xff0c;而&&是短路與&#xff0c;當&&左邊條件為假則不用再判斷右邊條件&#xff0c;所以效率更高 例如&#xff0c;對于if(str ! null && !str.equals(“”))表達式&#xff0c…

codeforce 457DIV2 C題

題意 你需要構造一個n個點m條邊的無向有權圖&#xff0c;要求這個圖的MST中邊權的和與從1到n的最短路長度都為素數 分析 可以想到這樣一種貪心&#xff0c;在i到i1直接連一條邊&#xff0c;這樣最短路和MST都會是同樣的一些邊。只要保證他們的和為素數就好&#xff0c;對于其他…

何必言精通——十年雜感

30虛歲了。這一、兩年&#xff0c;有事沒事之中口中經常念著李商隱那首《錦瑟》&#xff1a; 錦瑟無端五十弦&#xff0c;一弦一柱思華年。莊生曉夢迷蝴蝶&#xff1b;望帝春心托杜鵑。滄海月明珠有淚&#xff1b;藍田日暖玉生煙。此情可待成追憶&#xff0c;只是當時已惘然。…

mysql 索引效果是否疊加_MySQL基礎實用知識集合(二)

上期小編給大家匯總介紹了mysql的6個基礎的知識點,下面繼續給大家分享一下另外7個知識點&#xff1a;7、什么是死鎖&#xff1f;怎么解決&#xff1f;死鎖&#xff1a;兩個或多個事務相互占用了對方的鎖&#xff0c;就會一直處于等待的狀態。常見的解決死鎖的方法&#xff1a;(…

常用數據庫端口號總結

關系型數據庫&#xff1a; 1.Oracle數據庫默認端口號為&#xff0c;1521&#xff1b; 2.MySQL數據庫默認端口號為&#xff0c;3306&#xff1b; 3.SQLServer數據庫默認端口號為&#xff0c;1433; 4.postgreSQL數據庫默認端口號為&#xff0c;5432; NOSQL數據庫&#xff1a; …

【附源碼】為了幫助程序員談戀愛,我做了這個APP

前段時間&#xff0c;21歲的我第一次開啟了名為『戀愛』的副本&#xff0c;開始打名叫『女朋友』的BOSS&#xff0c;深感過程艱難&#xff0c;整個過程仿佛0級的菜雞進入了布滿世界迷霧的地圖&#xff0c;只能小心翼翼才能平安通過。然而在打怪升級的過程中&#xff0c;偶然看見…

IP協議

IP協議只負責傳送IP數據包&#xff0c;無法監視和控制網絡中出現的一些問題&#xff0c;這些工作由Internet的控制協議來完成IP是T C P / I P協議族中最為核心的協議。所有的T C P、U D P、I C M P及I G M P數據都以I P數據報格式傳輸。它的特點如下:不可靠&#xff08;u n r e…

職場故事和感悟

1. 獵頭烏龍事件 05年11月的時候&#xff0c;我做了一個招聘主管的職位&#xff0c;一位朋友T推薦了她的好友L。從條件上看人很合適&#xff0c;聰明肯干&#xff0c;就是資力淺些&#xff0c;如果工作努力應該提高很快。我與其它兩個候選人一起推薦給了客戶。L與其它兩人一…

zbb20180415 cs 1.6 half-life launcher已停止工作

控制面板->系統->高級系統設置->高級->性能 設置->數據保護->為除下列選定程序之外的所有程序和服務啟用->添加-> 找到你的CS客戶端 選擇就好了-》應用 -》確定轉載于:https://www.cnblogs.com/super-admin/p/8849581.html

python形參中的:*args和**kwargs區別

詳細參考文章&#xff1a; https://blog.csdn.net/u014513323/article/details/89450573 感謝樓主分享

gitlab修改用戶密碼_CRM用戶模塊(用戶密碼修改)

四 密碼修改1 需求分析修改當前登陸用戶的登陸密碼2 頁面原型3 流程圖 4 編寫ControllerResponseBodyRequestMapping("updatePwd")public MessageModel updatePwd(HttpServletRequest request, String oldPassword, String newPassword, String confirmPassword){Mes…

ICMP協議簡介

ICMP是Internet Control Message Protocol&#xff0c;因特網控制報文協議。它是TCP/IP協議族的一個子協議&#xff0c;用于在IP主機、路由器之間傳遞控制消息。控制消息是指網絡通不通、主機是否可達、路由器是否可用等網絡本身的消息。這些控制消息雖然并不傳輸用戶數據&…

vue之vuex

vuex負責vue的數據管理和共享&#xff0c;適用于大型項目 安裝vuex npm install vuex --save; 運用vuex 主要有五大金剛&#xff1a; export default new Vuex.Store({//$store為了讓外部可以引用state,//數據存儲mutations,//行為動作actions,//異步改變state狀態,也就是提交m…

項目管理中的特殊———例外管理

概念 例外管理由管理學引入領導學&#xff0c;也就是指領導人應將主要精力和時間用來處理首次出現的、模糊隨機、十分重要需要立即處理的非程序化問題。而對于決策對象反復出現的&#xff0c;決策者已有固定的或例行的程序來處理的問題&#xff0c;即常例&#xff0c;由于在職業…

mysql 5.6.23 源碼包安裝報錯_CentOS6.5_64bit下編譯安裝MySQL-5.6.23

標簽&#xff1a;************************************************************CentOS6.5_64bit下編譯安裝MySQL-5.6.23**************************************************************一、關閉防火墻chkconfig iptables offservice iptables stop二、下載mysql源碼包&…