摘要:題目鏈接和安卓解鎖那道題很想,那道題步數(shù)是到,這道題是到,表示數(shù)字的位數(shù)。,每次要記錄走到的位數(shù)作為,從開始。注意最后的情況,只有一位的時(shí)候算上,一位以上,首位都不可以是。滾動(dòng)數(shù)組優(yōu)化空間到
357. Count Numbers with Unique Digits
題目鏈接:https://leetcode.com/problems...
和安卓解鎖那道題很想,那道題步數(shù)是m到n,
https://segmentfault.com/a/11...
這道題是1到n,表示數(shù)字的位數(shù)。backtracking,每次要記錄走到的位數(shù)作為depth,從msb開始。dp[i]: # of numbers with (i+1) unique digits, dp[0] = 9, dp[i] = (n - i) * dp[i-1],最后結(jié)果是sum(dp[i]),i = [0, n-1], 也可以dfs來做, bottom up。注意最后0的情況,只有一位的時(shí)候算上0,一位以上,首位都不可以是0。
public class Solution { public int countNumbersWithUniqueDigits(int n) { if(n == 0) return 1; int[] dp = new int[Math.min(n, 10)]; dp[0] = 9; // count 0 int result = 1 + dp[0]; for(int i = 1; i < Math.min(n, 10); i++) { dp[i] = (10 - i) * dp[i-1]; result += dp[i]; } return result; } }
滾動(dòng)數(shù)組優(yōu)化空間到O(1)
public class Solution { public int countNumbersWithUniqueDigits(int n) { if(n == 0) return 1; int dp = 9; // count 0 int result = 1 + dp; for(int i = 1; i < Math.min(n, 10); i++) { dp = (10 - i) * dp; result += dp; } return result; } }
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/66627.html
摘要:此模型的特殊性相鄰的三個(gè)值可以得到一個(gè)爆破值,相鄰的兩個(gè)值相當(dāng)于沒有值,賦予類比二分法求極值。通過二分確定具體的位置。此處二分法到極值是三個(gè)連續(xù)的數(shù),從相鄰三個(gè)數(shù)的固定值,逐次放寬范圍,確定越來越寬的爆破值。 此題的總結(jié): 求解 最大爆破值, 是一個(gè) 倒序 二分法問題,最終的原子結(jié)構(gòu)是連續(xù)的三個(gè)數(shù)。連續(xù)的三個(gè)數(shù),可以 往上遞推 間隔一個(gè)數(shù)的三個(gè)數(shù),間隔n個(gè)數(shù)的三個(gè)數(shù)特點(diǎn)在于:每一...
摘要:定義默認(rèn)值和是否為空默認(rèn)時(shí)間為創(chuàng)建時(shí)間設(shè)置為將會(huì)在數(shù)據(jù)表中添加列如果查詢時(shí)該列為數(shù)據(jù)庫會(huì)拋出錯(cuò)誤如果你想在查詢前檢查該值是否為,看一下下面的驗(yàn)證部分可以是或如果多個(gè)列是相同就會(huì)變成會(huì)創(chuàng)建索引也可以這么創(chuàng)建索引主鍵自動(dòng)增量在可以有可以通過屬性 定義Model import sequelize from sequelize var Foo = sequelize.define(foo, ...
摘要:可否被整除使用模運(yùn)算符來檢查余數(shù)是否等于。數(shù)值增加序號(hào)后綴使用模運(yùn)算符來查找單位數(shù)和十位數(shù)的值。 這是對(duì) github 上30s代碼片段的翻譯整理,由于作者的文檔是通過腳本生成的,也就懶得去提pull了,整理了放到博客上供大家學(xué)習(xí)參考,后續(xù)會(huì)持續(xù)跟進(jìn)翻譯。 Array Array concatenation (合并參數(shù)) 使用 Array.concat() 來連接參數(shù)中的任何數(shù)組或值。...
摘要:首先利用創(chuàng)建一個(gè)可遷移的數(shù)據(jù)表模板,該命令運(yùn)行后會(huì)在目錄下生成一個(gè)文件生成的文件包含和兩個(gè)方法,其中中是包含了添加表,添加列,添加索引等等一切的描述,比較簡單,就是刪除表,當(dāng)然里面還可以有一些其他邏輯中支持的數(shù)據(jù)表列類型,做個(gè)備注,暫時(shí) 1、首先利用artisan創(chuàng)建一個(gè)可遷移的數(shù)據(jù)表模板,該命令運(yùn)行后會(huì)在database/migrations目錄下生成一個(gè)文件 php artisan...
閱讀 2183·2023-04-25 15:00
閱讀 2361·2021-11-18 13:14
閱讀 1188·2021-11-15 11:37
閱讀 3097·2021-09-24 13:55
閱讀 1234·2019-08-30 15:52
閱讀 2656·2019-08-29 12:35
閱讀 3371·2019-08-29 11:04
閱讀 1219·2019-08-26 12:13