1. 程式人生 > >演算法愛好者——演算法題:報數 ? 待解決

演算法愛好者——演算法題:報數 ? 待解決

報數指的是,按照其中的整數的順序進行報數,然後得到下一個數。如下所示:1,11,21,1211,111221, …

1 讀作 “one 1” -> 11

11 讀作 “two 1s” -> 21

21 讀作 “one 2, then one 1” -> 1211

給定一個整數 n,寫一個函式返回第 n 個順序。

注意事項:
整數的順序將表示為一個字串。

格式:

輸入行第一行輸入一個整數 n,最後輸出階乘尾部零的個數。

樣例輸入

n = 5

樣例輸出

“111221”

思路

相關推薦

演算法愛好者——連結串列排序 ? 解決

請寫一個函式實現在 O(n log n) 時間複雜度和常數級的空間複雜度下給連結串列排序。 格式: 輸入第一行輸入一個連結串列,最後輸入按升序排列後的連結串列。 樣例輸入 1 -> 3 -> 2 -> null 樣例輸出 1 -&g

演算法愛好者——重複子串 ? 解決

寫一個方法, 給一個由 N 個字元構成的字串 A和一個由 M 個字元構成的字串 B, 返回 A 必須重複的次數,使得 B 是重複字串的子串。如果 B 不可能為重複字串的子串, 則返回 -1. 注意事項: 0 <= N <= 1000,1 <=

演算法愛好者——k 數和 ? 解決

給定 n 個不同的正整數,整數 k(k < = n)以及一個目標數字。在這 n 個數裡面找出 k 個數,使得這 k 個數的和等於目標數字,寫一個函式實現找到不同的方案的數量。 格式: 輸入第一行輸入一個整數陣列,第二行輸入一個整數 k ,第三行輸入一個

演算法愛好者——演算法報數解決

報數指的是,按照其中的整數的順序進行報數,然後得到下一個數。如下所示:1,11,21,1211,111221, … 1 讀作 “one 1” -> 11 11 讀作 “two 1s” -> 21 21 讀作 “one 2, then one 1

演算法愛好者——演算法最大間距 ? 解決

給定一個未經排序的陣列,寫一個函式找出其排序表中連續兩個要素的最大間距。如果陣列中的要素少於 2 個,請返回 0。 注意事項: 1、可以假定陣列中的所有要素都是非負整數,且最大不超過 32 位整數。

演算法愛好者——演算法四元組 ? 解決

給定一個包含 n 個數的整數陣列 S,寫一個函式在 S 中找到所有使得和為給定整數 target 的四元組 ( a,b,c,d )。 注意事項: 1、四元組 ( a,b,c,d ) 中,需要滿足 a <= b <= c <= d 2、答案

演算法愛好者——演算法交錯正負數 ? 解決

給出一個含有正整數和負整數的陣列,寫一個函式重新排列成一個正負數交錯的陣列。 注意事項: 不需要保持正整數或者負整數原來的順序。 挑戰 : 原地完成,沒有額外的空間 格式: 輸入行第一行輸入

演算法愛好者——演算法亂序字串 ? 解決

給出一個字串陣列 S,寫一個函式找到其中所有的亂序字串(Anagram)。如果一個字串是亂序字串,那麼它存在一個字母集合相同,但順序不同的字串也在S中。 注意事項: 所有的字串都只包含小寫字母 格式: 輸入行輸入一個字元陣列 S,最後輸出其中的亂序字串。

演算法愛好者——演算法堆化 ? 解決

給出一個整數陣列,寫一個函式將陣列堆化。堆化操作就是把它變成一個最小堆陣列。對於堆陣列A,A[0] 是堆的根,並對於每個 A[i],A [i * 2 + 1] 是 A[i] 的左兒子並且 A[i * 2 + 2] 是 A[i] 的右兒子。 說明: 什麼是堆?

演算法愛好者——演算法最大點集 ? 解決

P為給定的二維平面整數點集。定義 P 中某點x,如果x滿足 P 中任意點都不在 x 的右上方區域內(橫縱座標都大於x),則稱其為“最大的”。求出所有“最大的”點的集合。(所有點的橫座標和縱座標都不重複, 座標軸範圍在[ 0, 1e9 ) 內) 如下圖:實心點為

最全BAT演算法面試130阿里、百度、騰訊、京東、美團、今日頭條

【百度、阿里、騰訊、京東、美團、今日頭條】等公司都會必考關於演算法的面試題目,今天總結演算法和題目如下: 演算法基礎: 第一:複雜度估算和排序演算法(上) 1) 時間複雜度和空間複雜度 2)認識對數器 3)氣泡排序 4)選擇排序 5)插入排序 6)如何

【模板】LCA Tarjan演算法 (模板洛谷P3379)

題目描述 如題,給定一棵有根多叉樹,請求出指定兩個點直接最近的公共祖先。 輸入輸出格式 輸入格式: 第一行包含三個正整數N、M、S,分別表示樹的結點個數、詢問的個數和樹根結點的序號。 接下來N-1行每行包含兩個正整數x、y,表示x結點和y結點之間有一條直接連線的邊

最全BAT演算法面試100阿里、百度、騰訊、京東、美團、今日頭條

第一:複雜度估算和排序演算法(上) 1) 時間複雜度和空間複雜度 2)認識對數器 3)氣泡排序 4)選擇排序 5)插入

第七報數

問題描述 報數序列是一個整數序列,按照其中的整數的順序進行報數,得到下一個數。其前五項如下: 1 11 21 1211 111221 1 被讀作 “one 1” (“一個一”) , 即 11。 11 被讀作 “t

LeetCode演算法38報數解析

報數序列是一個整數序列,按照其中的整數的順序進行報數,得到下一個數。其前五項如下: 1. 1 2. 11 3. 21 4. 1211 5. 111221 1 被讀作 “one 1” (“一個一”) , 即 11。 11 被讀作 “two 1s

演算法(二十一)回溯法解決矩陣路徑問題

題目描述 請設計一個函式,用來判斷在一個矩陣中是否存在一條包含某字串所有字元的路徑。路徑可以從矩陣中的任意一個格子開始,每一步可以在矩陣中向左,向右,向上,向下移動一個格子。如果一條路徑經過了矩陣中的某一個格子,則之後不能再次進入這個格子。 例如 a b c e s f c s a d e

演算法愛好者——子集 ? 解決

給定一個含不同整數的集合,寫一個函式返回其所有的子集。其中子集中的元素排列必須是非降序的,解集必須不包含重複的子集。 格式: 輸入第一行輸入一個整數陣列的集合,最後輸出該集合的所有子集的集合。 樣

演算法愛好者——分糖果 ? 解決

有 N 個小孩站成一列。每個小孩有一個評級。按照以下要求,給小孩分糖果: 1、每個小孩至少得到一顆糖果。 2、評級越高的小孩可以比他相鄰的兩個小孩得到更多的糖果。 寫一個函式計算需最少準備多少糖果

演算法愛好者——揹包問題升級版 ? 解決

給出一個都是正整數的陣列 nums,其中沒有重複的數。編寫一個函式從中找出所有的和為 target 的組合個數。其中一個數可以在組合中出現多次。數的順序不同則會被認為是不同的組合。 格式: 第一行輸入一個 整數陣列,第二行輸入一個數字 target ,最後按

演算法愛好者——擺動排序 ? 解決

給你一個沒有排序的陣列,請將原陣列就地重新排列滿足如下性質: nums[0] <= nums[1] >= nums[2] <= nums[3]…. 請寫一個函式實現此排序功能。 注意事項: 請就地排序陣列,也就是不需要額外陣列 格式