摘要:題目詳情輸入一個(gè)字符串形式的羅馬數(shù)字,我們需要將它轉(zhuǎn)換為阿拉伯?dāng)?shù)字表示的整數(shù)。其中輸入的數(shù)字在到的范圍內(nèi)。想法這道題我不太熟悉的地方在于羅馬數(shù)字和阿拉伯?dāng)?shù)字之間的轉(zhuǎn)換規(guī)律。
題目詳情
Given a roman numeral, convert it to an integer.想法
Input is guaranteed to be within the range from 1 to 3999.輸入一個(gè)字符串形式的羅馬數(shù)字,我們需要將它轉(zhuǎn)換為阿拉伯?dāng)?shù)字表示的整數(shù)。其中輸入的數(shù)字在1到3999的范圍內(nèi)。
這道題我不太熟悉的地方在于羅馬數(shù)字和阿拉伯?dāng)?shù)字之間的轉(zhuǎn)換規(guī)律。
首先不同的字符代表不同的數(shù),例如‘I’ = 1,"V" = 5,"X" = 10 等等。
如果代表較小數(shù)的字符出現(xiàn)在較大數(shù)的左側(cè),那么應(yīng)該減去這個(gè)左邊的數(shù)應(yīng)該是被減去的。
解法public int romanToInt(String s) { HashMapcount = new HashMap (); int res = 0; insertMap(count); for(int i=0;i insertMap(HashMap count){ count.put("I", 1); count.put("V", 5); count.put("X", 10); count.put("L", 50); count.put("C", 100); count.put("D", 500); count.put("M", 1000); return count; }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/70988.html
摘要:題目鏈接題目分析將給定的羅馬數(shù)字轉(zhuǎn)換成阿拉伯?dāng)?shù)字。要注意,先替換連續(xù)出現(xiàn)的那些。最終代碼若覺得本文章對你有用,歡迎用愛發(fā)電資助。 D82 13. Roman to Integer 題目鏈接 13. Roman to Integer 題目分析 將給定的羅馬數(shù)字轉(zhuǎn)換成阿拉伯?dāng)?shù)字。 思路 用替換法。 要注意,先替換連續(xù)出現(xiàn)的那些。例如,比先替換I,要先替換III。 最終代碼
摘要:解題思路羅馬數(shù)字是符號和加操作的一個(gè)組合。他基于以下七個(gè)符號。組合規(guī)則基本數(shù)字中的任何一個(gè),自身連用構(gòu)成數(shù)目,或者放在大數(shù)的右邊連用構(gòu)成數(shù)目,都不能超過三個(gè)放在大數(shù)的左邊只能用一個(gè)。想更一進(jìn)步的支持我,請掃描下方的二維碼,你懂的 Given a roman numeral, convert it to an integer. Input is guaranteed to be...
摘要:正則表達(dá)式思路首先我們要熟悉羅馬數(shù)的表達(dá)方式。驗(yàn)證字符串是否是羅馬數(shù),我們先看一下有效的羅馬數(shù)是什么樣的,假設(shè)該數(shù)字小于,從千位到個(gè)位依次拆解。 Valid Roman Numeral 正則表達(dá)式 思路 首先我們要熟悉羅馬數(shù)的表達(dá)方式。M是1000,D是500,C是100,L是50,X是10,V是5,I是1。驗(yàn)證字符串是否是羅馬數(shù),我們先看一下有效的羅馬數(shù)是什么樣的,假設(shè)該數(shù)字小于50...
摘要:前言從開始寫相關(guān)的博客到現(xiàn)在也蠻多篇了。而且當(dāng)時(shí)也沒有按順序?qū)懍F(xiàn)在翻起來覺得蠻亂的??赡艽蠹铱粗卜浅2环奖?。所以在這里做個(gè)索引嘻嘻。順序整理更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新更新 前言 從開始寫leetcode相關(guān)的博客到現(xiàn)在也蠻多篇了。而且當(dāng)時(shí)也沒有按順序?qū)憽F(xiàn)在翻起來覺得蠻亂的??赡艽蠹铱粗卜浅2环奖?。所以在這里做個(gè)索引嘻嘻。 順序整理 1~50 1...
摘要:字符數(shù)值例如,羅馬數(shù)字寫做,即為兩個(gè)并列的。通常情況下,羅馬數(shù)字中小的數(shù)字在大的數(shù)字的右邊。給定一個(gè)羅馬數(shù)字,將其轉(zhuǎn)換成整數(shù)。 Create by jsliang on 2019-05-23 13:24:24 Recently revised in 2019-05-23 14:55:20 一 目錄 不折騰的前端,和咸魚有什么區(qū)別 目錄 一 目錄 二 前言 三 解題 ...
閱讀 3245·2021-11-24 09:39
閱讀 3194·2021-10-21 09:38
閱讀 2408·2019-08-29 15:28
閱讀 3752·2019-08-26 12:23
閱讀 2631·2019-08-26 12:19
閱讀 1370·2019-08-23 12:44
閱讀 2138·2019-08-23 12:02
閱讀 1011·2019-08-22 17:05