pat乙級考試python3

2021-09-26 08:10:44 字數 3049 閱讀 1515

1001 害死人不償命的(3n+1)猜想 (15 分):

重點:(請看清題目的)主要問題對任何乙個正整數 n,如果它是偶數,那麼把它砍掉一半;如果它是奇數,那麼把 (3n+1) 砍掉一半。

**:

sum=0

n= int(input())

while n!=1 :

if((n%2)==0):

n=(n/2)

sum+=1

else :

n=n*3+1

print(sum)

1002 寫出這個數 (20 分):

**:

switch =

n= int(input())

sum=0

n=str(n)

for i in range(len(n)):

sum+=int(n[i])

sum=str(sum)

s=""

i=0for i in range(len(sum)):

if i!=0:

s+=" "+switch[int(sum[i])]

else:

s+=switch[int(sum[i])]

i+=1

print(s)

1004 成績排名 (20 分):

沒啥大問題  就是選取好用那種資料型別

n=int(input())

s=max1=["",0]

min1=["",100]

for i in range(n):

r=input()

s+=r.split()

for i in range(1,n+1):

if int(s[i*3-1])<=min1[1]:

min1[1]=int(s[i*3-1])

min1[0]=i

if int(s[i*3-1])>=max1[1]:

max1[1]=int(s[i*3-1])

max1[0]=i

for i in range(1):

print(s[max1[0]*3-3],s[max1[0]*3-2])

print(s[min1[0]*3-3],s[min1[0]*3-2])

1006 換個格式輸出整數 (15 分):

switch =

n=str(input())

s=""

sum=len(n)

for i in range(sum):

if i!=sum-1:

s+=switch[sum-i]*int(n[i])

else:

for j in range(int(n[i])):

s+=str(j+1)

print(s)

1011 a+b 和 c (15 分):

重點:給的整型的資料型別  靈活定義資料型別

n=int(input())

a=for i in range(n):

s=input()

s = s.split()

for i in range(n):

print("case #"+str(i+1)+":",a[i])

1015 德才論 (25 分):

始終發現有三個測試點執行超時。。。。。。我己經沒有辦法了

c=input().split()

n,c1,c2=int(c[0]),int(c[1]),int(c[2])

hh=hl=

ll=l=

a=b=

for i in range (n):

s=input().split()

if int(s[1])>=c1 and int(s[2])>=c1 :

if int(s[1])>=c2 and int(s[2])>=c2:

elif int(s[1])>=c2:

elif int(s[1]) >=int(s[2]):

else:

def paixu(a=):

g=len(a)

for i in range (g):

for j in range(i+1,g):

if int(a[i][1])+int(a[i][2])=int(a[i][1]):

b = a[i]

a[i] = a[j]

a[j] = b

paixu(hh)

paixu(hl)

paixu(ll)

paixu(l)

hh=hh+hl+ll+l

count=len(hh)

print(count)

for h in range(count):

for k in range(3):

if k==2:print(hh[h][k])

else:print(hh[h][k],end=" ")

1020 月餅 (25 分):

重點:只有種類和需求量是整數

n=input().split()

zl,big=int(n[0]),int(n[1])

a=k=0

sum=0.00

b=for i in range(2):

s=input().split()

for i in range(zl):

c=sorted(b,reverse=true)

while big>0:

h=a[2].index(c[k])

if big>float(a[0][h]):

sum=sum+float(a[1][h])

big=big-float(a[0][h])

else :

sum=sum+float(big/float(a[0][h]))*float(a[1][h])

big=big-float(a[0][h])

k += 1

print('%.2f' % sum)

exit(0)

PAT 乙級 1041 考試座位號

時間限制 400 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 chen,yue 每個pat考生在參加考試時都會被分配兩個座位號,乙個是試機座位,乙個是考試座位。正常情況下,考生在入場時先得到試機座位號碼,入座進入試機狀態後,系統會顯示該考生的考試座位...

PAT乙級1041 考試座位號

1041 考試座位號 15 15 分 提問 每個pat考生在參加考試時都會被分配兩個座位號,乙個是試機座位,乙個是考試座位。正常情況下,考生在入場時先得到試機座位號碼,入座進入試機狀態後,系統會顯示該考生的考試座位號碼,考試時考生需要換到考試座位就座。但有些考生遲到了,試機已經結束,他們只能拿著領到...

PAT乙級考試記錄做題感想

到今天已經刷了很多題了,愈加感覺到乙級的題目不是很難,但有的地方很細節,讀題目一定要仔細不然又是白費功夫,常常是某個極限條件未考慮導致錯誤實在可惜,且刷題時也 感覺語言的優越性,用c實在比不上python來的輕巧,不過 更加能體會題目用意,想想python的字典等在乙級題目上一用 就能很快過了,但c...