×
解除綁定,重新設定系統帳號的密碼
您的系統帳號 ID:
您的系統帳號:
您的帳號暱稱:
設定新密碼:
設定新密碼:
×
請輸入要加入的「課程代碼」
請向開設課程的使用者索取「課程代碼」
分類題庫
解題動態
排行榜
討論區
競賽區
登入
註冊
發表新討論
解題報告
#20441: Python
wanttogo0718@gmail.com
(Hello World)
學校 : 國立高雄師範大學
編號 : 86382
×
傳送站內訊息
傳給:
主題:
內容:
來源 : [42.75.43.186]
最後登入時間 :
2021-05-21 22:56:38
a013.
羅馬數字
--
NPSC 模擬試題
| From: [42.75.130.153] | 發表日期 : 2020-01-23 08:39
解題思維
1. 羅馬轉阿拉伯
r2i = {'I': 1, 'V': 5, 'X': 10, 'L': 50, 'C': 100, 'D': 500, 'M': 1000}
r_num1 = input()
list1 = [r2i[c] for c in r_num1]
#20442: Re:Python
wanttogo0718@gmail.com
(Hello World)
學校 : 國立高雄師範大學
編號 : 86382
×
傳送站內訊息
傳給:
主題:
內容:
來源 : [42.75.43.186]
最後登入時間 :
2021-05-21 22:56:38
a013.
羅馬數字
--
NPSC 模擬試題
| From: [42.75.130.153] | 發表日期 : 2020-01-23 08:56
剛手殘上傳了TAT
完整如下:
解題思維
1. 羅馬轉阿拉伯
IV -> (-1)*1 + 5 -> 4
XC -> (-1)*10 + 100 -> 90
r2i
=
{
'I'
:
1
,
'V'
:
5
,
'X'
:
10
,
'L'
:
50
,
'C'
:
100
,
'D'
:
500
,
'M'
:
1000
}
r_num1
=
input
()
list1
=
[r2i[c]
for
c
in
r_num1]
# 字母轉代表的數字(ex: V -> 5)
for
i
in
range
(
len
(list1)
-
1
):
if
list1[i]
<
list1[i
+
1
]: list1[i]
*=
-
1
# 如果比list的下一項大,則倒數
num1
=
sum
(list1)
2. 阿拉伯轉羅馬:
i2r
=
{
1000
:
'M'
,
900
:
'CM'
,
500
:
'D'
,
400
:
'CD'
,
100
:
'C'
,
90
:
'XC'
,
50
:
'L'
,
40
:
'XL'
,
10
:
'X'
,
9
:
'IX'
,
5
:
'V'
,
4
:
'IV'
,
1
:
'I'
}
r_str
=
''
while
num
>
0
:
for
key
in
i2r:
if
num
>=
key:
r_str
+=
i2r[key]
num
-=
key
break
#20443: Re:Python
asnewchien@gmail.com
(david)
學校 : 不指定學校
編號 : 68108
×
傳送站內訊息
傳給:
主題:
內容:
來源 : [122.117.95.179]
最後登入時間 :
2024-11-04 20:21:51
a013.
羅馬數字
--
NPSC 模擬試題
| From: [36.232.34.42] | 發表日期 : 2020-01-23 10:28
剛手殘上傳了TAT
完整如下:
解題思維
1. 羅馬轉阿拉伯
IV -> (-1)*1 + 5 -> 4
XC -> (-1)*10 + 100 -> 90
r2i
=
{
'I'
:
1
,
'V'
:
5
,
'X'
:
10
,
'L'
:
50
,
'C'
:
100
,
'D'
:
500
,
'M'
:
1000
}
r_num1
=
input
()
list1
=
[r2i[c]
for
c
in
r_num1]
# 字母轉代表的數字(ex: V -> 5)
for
i
in
range
(
len
(list1)
-
1
):
if
list1[i]
<
list1[i
+
1
]: list1[i]
*=
-
1
# 如果比list的下一項大,則倒數
num1
=
sum
(list1)
2. 阿拉伯轉羅馬:
i2r
=
{
1000
:
'M'
,
900
:
'CM'
,
500
:
'D'
,
400
:
'CD'
,
100
:
'C'
,
90
:
'XC'
,
50
:
'L'
,
40
:
'XL'
,
10
:
'X'
,
9
:
'IX'
,
5
:
'V'
,
4
:
'IV'
,
1
:
'I'
}
r_str
=
''
while
num
>
0
:
for
key
in
i2r:
if
num
>=
key:
r_str
+=
i2r[key]
num
-=
key
break
別貼答案,讓別人可以好好練習。
ZeroJudge Forum