LeetCode刷題筆記 12 整數轉羅馬數字

2021-09-27 01:27:42 字數 888 閱讀 3900

羅馬數字包含以下七種字元: i, v, x, l,c,d 和 m。

字元 數值

i 1v 5

x 10

l 50

c 100

d 500

m 1000

例如, 羅馬數字 2 寫做 ii ,即為兩個並列的 1。12 寫做 xii ,即為 x + ii 。 27 寫做 xxvii, 即為 xx + v + ii 。

通常情況下,羅馬數字中小的數字在大的數字的右邊。但也存在特例,例如 4 不寫做 iiii,而是 iv。數字 1 在數字 5 的左邊,所表示的數等於大數 5 減小數 1 得到的數值 4 。同樣地,數字 9 表示為 ix。這個特殊的規則只適用於以下六種情況:

i 可以放在 v (5) 和 x (10) 的左邊,來表示 4 和 9。

x 可以放在 l (50) 和 c (100) 的左邊,來表示 40 和 90。

c 可以放在 d (500) 和 m (1000) 的左邊,來表示 400 和 900。

給定乙個整數,將其轉為羅馬數字。輸入確保在 1 到 3999 的範圍內。

一開始想寫一大堆if,while,真的蠢

後面大概開始寫沒想到直接寫cm,cd這種形式

手生阿,以後還是要經常寫,哪怕簡單題

class

solution

; string[

] str =

; stringbuilder res =

newstringbuilder()

;for

(int i =

0; i <

13; i++)}

return res.

tostring()

;}}

Leetcode 刷題(python)之 顛倒整數

給定乙個範圍為 32 位 int 的整數,將其顛倒。例 1 輸入 123 輸出 321 例 2 輸入 123 輸出 321 例 3 輸入 120 輸出 21 注意 假設我們的環境只能處理 32 位 int 範圍內的整數。根據這個假設,如果顛倒後的結果超過這個範圍,則返回 0。class soluti...

Leetcode刷題筆記

1.兩數之和給定乙個整數陣列nums 和乙個目標值target,請你在該陣列中找出和為目標值的那兩個整數,並返回他們的陣列下標。ps 你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。思路 用target減去nums中的每乙個數,並設立乙個字典來記錄對應的下標 class...

LeetCode刷題筆記

實現strstr 給定乙個 haystack 字串和乙個 needle 字串,在 haystack 字串中找出 needle 字串出現的第乙個位置 從0開始 如果不存在,則返回 1。示例 1 輸入 haystack hello needle ll 輸出 2 示例 2 輸入 haystack aaaa...