一:分蘋果
果園裡有堆蘋果,n(1<n<9)只熊來分。第一隻熊把這堆蘋果平均分為n份,多了乙個,它把多的乙個扔了,拿走了乙份。第二隻熊把剩下的蘋果又平均分成n份,又多了乙個,它同樣把多的乙個扔了,拿走了乙份,第
三、第四直到第n隻熊都是這麼做的,問果園裡原來最少有多少個蘋果?
分析:
1:3121-1=3120 每人3120/5=624
2:624x4-1=2495 每人2495/5=499
3:499x4-1=1995 每人1995/5=399
4:399x4-1=1595 每人1595/5=319
5:319x4-1=1275 每人1275/5=25 需要找到數字25x4=1020
二:馬路上的路燈n = int(raw_input())
i = 0
while
true:
i += 1
m = i # 假設n=5,則一直找m使其滿足一下迴圈要求,這裡1020滿足要求,遞增得到m值
for j in range(n,0,-1):
if m%(n-1)==0:
m = m*n/(n-1)+1
else:
break
else:
break
print m
一段長度為m的主幹道上的一些區域建地鐵。要建地鐵的這些區域可以用它們在數軸上的起始點和終止點表示,已知任一區域的起始點和終止點的座標都是整數,區域之間可能有重合的部分。現在要把這些區域中的路燈(包括區域端點處的兩個路燈)移走。你能幫助小賽計算一下,將這些路燈移走後,馬路上還有多少路燈?
三:日期倒計時m,n=map(int,raw_input().split())
res,flag =0,0
for i in range(n):
a,b = map(int,raw_input().split())
if a>=flag:
res=res+a-flag
flag=b+1
# print res,flag
res=res+m+1-flag
print res
""">>> 500 3
>>> 100 200
100 201
>>> 150 300
100 301
>>> 360 361
159 362
298=159+500+1-361
"""
輸入乙個日期格式為yyyy-mm-dd,不考慮日期是否小於今天。輸出乙個數字表示今天(2023年10月18日)距離該日期還剩多少天。
分析:在剩下的字元排名第幾個*剩下字元數的階乘
五:上台階"""
hgebkflacdji
set(['a', 'c', 'b', 'e', 'd', 'g', 'f', 'i', 'h', 'k', 'j', 'l']) hgebkflacdji
7 11 279417600
set(['a', 'c', 'b', 'e', 'd', 'g', 'f', 'i', 'k', 'j', 'l']) gebkflacdji
6 10 21772800
set(['a', 'c', 'b', 'e', 'd', 'f', 'i', 'k', 'j', 'l']) ebkflacdji
4 9 1451520
set(['a', 'c', 'b', 'd', 'f', 'i', 'k', 'j', 'l']) bkflacdji
1 8 40320
set(['a', 'c', 'd', 'f', 'i', 'k', 'j', 'l']) kflacdji
6 7 30240
set(['a', 'c', 'd', 'f', 'i', 'j', 'l']) flacdji
3 6 2160
set(['a', 'c', 'd', 'i', 'j', 'l']) lacdji
5 5 600
set(['a', 'c', 'd', 'i', 'j']) acdji
0 4 0
set(['c', 'd', 'i', 'j']) cdji
0 3 0
set(['d', 'i', 'j']) dji
0 2 0
set(['i', 'j']) ji
1 1 1
set(['i']) i
0 0 0
set()
302715242
"""mdict =
import math
deffunc
(cordinate, string):
print cordinate,string
if string:
length = len(string)
less = 0
for char in cordinate:
if char < string[0]:
less += 1
cordinate.remove(string[0])
# print less,length-1,less * math.factorial(length - 1)
return less * math.factorial(length - 1) + func(cordinate, string[1:])
else:
return
0n = int(raw_input())
for i in range(n):
line = raw_input()
print func(set("abcdefghijkl"), line) + 1
六:約會def
getnum
(m):
if m==2:
return
1elif m==3:
return
2else:
a,b=1,2
for i in range(m-3):
b=a+b
a=b-a
return b
n = int(raw_input())
for i in range(n):
m = int(raw_input())
print(getnum(m))
一大早bob就從點(0,0)出發,前往約會地點(a,b)。bob沒有一點方向感,因此他每次都隨機的向上下左右四個方向走一步。簡而言之,如果bob當前在(x,y),那麼下一步他有可能到達(x+1,y),(x-1,y),(x,y+1),(x,y-1)。他昨天花了s步到達了約會地點。
分析:next = s-(abs(a)+abs(b))這個距離要大於0,並且差值是2的倍數
"""
這個要考慮多種情況:
next>0
a,b<0
"""a,b,s=map(int,raw_input().split())
next = s-(abs(a)+abs(b))
if next%2==0
and next >=0:
'yes'
else:
'no'
Python基礎程式設計練習(二)
python基礎程式設計練習 二 輸入a,b的值,用空格隔開 計算結果 n,m map int,input split def getvalue n if n 0 or n 1 return 1else return n getvalue n 1 def value n,m first getval...
程式設計練習(二)
題目 字串 aa bb cc dd ee ff hh ii 每個元素以空格隔開,從這個字串中隨機選擇5個輸出,要求輸出的元素必須符合元素在字串先後位置,例如輸出aa bb cc dd ee aa bb dd ff ii 等等.解決思路 遞迴實現排序組合 實現 public class another...
Python 程式設計練習
進製轉換 import math def main t int input while t 0 t 1 a,b map int input split if a 0 print end a a if a 0 print 0 end t while a 0 a a bfor i in range le...