學習python的時候在pythontrip做了不少的題目,如今想想把我所做的題目解法分享出來和大家交流一下,若有不足請多多指教,謝謝!
一篇部落格是不太可能把所用做的題目寫出來的,所有我這個系列的部落格上,每一篇就記載十道題目,就是pythontrip之挑戰python的一頁所具有的題目。
個人認為挑戰python裡面的題還是比較簡單的。
print
(a+b)
給你乙個列表 l, 對l進行公升序排序並輸出排序後的列表。
例如:l = [8,2,50,3]
則輸出:[2,3,8,50]
這一題的排序主要用的是sorted()函式,有兩種寫法,當成語句使用還是函式使用都沒有問題。
print sorted(l)
print a[:
:-1]
給你一字典a,如a=,輸出字典a的key,以』,』連線,如『1,2,3』。要求key按照字典序公升序排列(注意key可能是字串)。
例如:a=, 則輸出:1,2,3
ok,這一題的手法就比較巧妙了,講一下思路,首先是把a中的所有keys取出,然後將其轉化為字串,再進行排序。
簡單講一下幾個函式:
map()函式,逗號右邊的東西進行逗號左邊東西的操作,比如這一題就是把a的所有keys轉化為字元。
join()函式和split()函式進行的操作的相逆的,join()進行字串的拼接,split()進行字串的分割。
print(",".join(sorted(map(str,a.keys()))))
給你乙個字串 a, 輸出a中奇數字置字元構成的字串(位置編號從1開始)。
例如:a=『xyzwd』
則輸出:xzd
這一題也是乙個語句的事情同樣是利用切片操作。
print a[::2]
輸出100以內的所有素數,素數之間以乙個空格區分(注意,最後乙個數字之後不能有空格)。
這一題的我的做法就比較蠢了,乙個個遍歷。(剛剛再寫這一題的時候。。。懵了一會兒。。才反應過來1不是素數。。)
for
i in range(2,101):
t = 1
forj in range(2,i):
if(i
% j == 0):
t = 0
break
if(t):
print i,
已知矩形長a,寬b,輸出其面積和周長,面積和周長以乙個空格隔開。
例如:a = 3, b = 8
則輸出:24 22
這一題。。。我就不解釋了。。。
print a*b,2
*a+2
*b
給你乙個整數列表l, 輸出l的中位數(若結果為小數,則保留一位小數)。
例如: l=[0,1,2,3,4]
則輸出:2
這一題也是簡單到不知道怎麼解釋的。。。主要就是保留一位小數那裡有些坑而已,除2的時候加個點零就好了.
l.sort()
iflen(l) %2 ==0:
print (l[len(l)/2]+l[len(l)/2
-1])/2.0
else:
print(l[len(l)/2])
給你兩個正整數a和b, 輸出它們的最大公約數。
例如:a = 3, b = 5
則輸出:1
這一題我用是蠢方法,反正不超時,第一步的if是如果a>b的話就交換a,b,這乙個語句是非常酷的了。
if
a>b:
a,b=b,a
t = a
while(1):
if(a % t ==0
and b % t ==0):
print t
break
t -=1
給你兩個正整數a和b, 輸出它們的最小公倍數。
例如:a = 3, b = 5
則輸出:15
嗯。。。還是蠢方法。。。。
if
a > b:
a,b=b,a
t = b
while(1):
if(t % a ==0
and t % b ==0):
print t
break
t +=1
沒有想到居然寫了好一會兒,第一次算是寫完了,自我感覺不錯,回想起剛剛學python的時候真的是一步乙個坑/(ㄒoㄒ)/~~
雖然現在python水平比以前高了些許,但是還是要努力學習才行!
ACM做題小技巧《轉》
acm做題小技巧 轉 我的acm 博文來自 acm做題過程中的一些小技巧。1.一般用c語言節約空間,要用c 庫函式或stl時才用c cout cin和printf scanf最好不要混用。大資料輸入輸出時最好不要用cin cout,防止超時。2.有時候int型不夠用,可以用long long或 in...
小程式購物車做題思路
思路 首先要改變前邊框的狀態,找到要選擇的項的下標以及狀態,判斷他的狀態,把狀態設乙個值然後存起來,整個新陣列,在新陣列中根據下表找到狀態然後讓它等於你存起來的狀態,然後把存起來的新陣列的狀態給原陣列 思路 先判斷全選前的狀態,整個新陣列,然後判斷全選前框框的值,迴圈遍歷新的陣列的狀態,跳出迴圈,把...
阿里做題 百度做題
阿里大概題目兩個單元 1 單選。大部分數學邏輯題 小部分程式設計基礎題 選擇題目 strlen和sizeof的用法 幾乎逢考必見 資料結構樹的遍歷,和equal的區別 排序的複雜度分析 程式設計題目 1 考察hadoop檔案讀寫過程 2 編寫乙個轉賬介面,注意條件 餘額 轉賬金額 轉賬次數 1000...