"""
給乙個字串"123456789",
在任意字元中間插入「+」、「-」、「*」、「/」四種運算子,使最後的計算結果等於50。
例如你可以如此插入:1* -56-7+89,使這個式子的最終結果等於50。
輸出所有可能的式子結果。
"""def
make_50
(self)
->
list
:str
=list
(self)
spr =
['+'
,'-'
,'*'
,'/',''
] sum_50 =
for a in spr:
for b in spr:
for c in spr:
for d in spr:
for e in spr:
for f in spr:
for g in spr:
for h in spr:
sum=
str[0]
+ a +
str[1]
+ b +
str[2]
+ c +
str[3]
+ d +
str[4]
+ e +
str[5]
+ f +
str[6]
+ g +
str[7]
+ h +
str[8]
ifeval
(sum)==
50:print
(sum
)sum
)return sum_50
# 不要修改下面的部分
if __name__ ==
"__main__"
: results = make_50(
"123456789"
)for result in results:
assert
eval
(result)
==50
print
("ok"
)
"""
我們知道 2 進製數字由 2 種字元(01)組成,10 進製數字由 10 種字元(0123456789)組成,16 進製由 16 種字元(0123456789abcdef)。不同進製的數字之間可以相互轉換。
我們定義一種 "十二地支進製" 數字,這種數字由中國古代地支的 12 種字元(子、醜、寅、卯、辰、巳、午、未、申、酉、戌、亥)組成。"十二地支進製" 數字和 10 進製數字的關係可以看下面的**。
請實現 10 進製數字和 "十二地支進製" 數字之間的轉換函式。不需要考慮負數。
"""def
int10_to_dizhi
(int10:
int)
->
str:
# 在這裡完成你的**
d =['子'
,'醜'
,'寅'
,'卯'
,'辰'
,'巳'
,'午'
,'未'
,'申'
,'酉'
,'戌'
,'亥'
] num =
while int10 //
12>=0:
a = int10 //
12 b = int10 %
12 int10 = a
if int10 ==0:
break
num.reverse(
) dizhi =
''for i in num:
dizhi = dizhi + d[i]
return dizhi
defdizhi_to_int10
(dizhi:
str)
->
int:
# 在這裡完成你的**
d =dz_list =
list
(dizhi)
length =
len(dz_list)
int10 =
0#計算結果
for i in
range
(length)
: int10 = int10 + d[dz_list[i]]*
12**
(length - i -1)
return int10
# 不要修改下面的部分
if __name__ ==
"__main__"
:for dizhi, int10 in[[
"子",0]
,["醜",1]
,["寅",2]
,["卯",3]
,["辰",4]
,["巳",5]
,["午",6]
,["未",7]
,["申",8]
,["酉",9]
,["戌",10]
,["亥",11]
,["醜子",12
],["醜醜",13
],["丑寅",14
],["醜卯",15
],["丑寅子卯"
,2019],
]:print
("{} <=> {}:"
.format
(dizhi, int10)
, end=
" ")
assert dizhi_to_int10(dizhi)
== int10
assert int10_to_dizhi(int10)
== dizhi
print
("ok"
)
兩道SQL面試題
第一是.關於加班時間的問題 公司規定一周內最多只能加班和12個小時,多餘的要去掉,去掉的規則是 某天加班超過1h的才能去,而且是依次大致平均的去,最小單位是1小時 舉例 日期 工號 加班小時 周一 a001 6 周二 a001 2 週三 a001 1 周四 a001 5 周五 a001 7 共計加班...
兩道概率面試題
問題一 一根一公尺長的繩子,隨機斷成三段 求最短的一段的期望長度以及最長的一段的期望長度。分析 這道題實際是一道純粹的概率題,沒有太多技巧。自己有推導,但是概率論忘得差不多了,退出來的概率有點詭異 以後補充一下知識,再推導。先放一下 陳利人 給出的答案吧,比較簡略 有時間,我會補充乙個詳細的。問題二...
從兩道面試題說起
一提到block大家肯定都知道要說的是迴圈引用。在arc中,如果兩個物件相互持有對方,就會造成迴圈引用,導致記憶體無法釋放。在block中,最常用的場景則是,self持有block,block中又持有了self。例如下方一段 property nonatmaic,copy block datacha...