日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

浙大PTA-Python题库 编程题第五章(5-1~5-11)题解

發布時間:2023/12/8 python 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 浙大PTA-Python题库 编程题第五章(5-1~5-11)题解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

其他各章題解鏈接如下
浙大PTA-Python題庫 編程題第一章(1-1~1-3)題解
https://blog.csdn.net/zimuzi2019/article/details/107020657

浙大PTA-Python題庫編程題 第二章(2.1~2.14)題解
https://blog.csdn.net/zimuzi2019/article/details/106984549

浙大PTA-Python題庫 編程題第三章(3-1~3-22)題解
https://blog.csdn.net/zimuzi2019/article/details/107040596

浙大PTA-Python題庫 編程題第四章(4-1~4-30)題解
https://blog.csdn.net/zimuzi2019/article/details/107040603

浙大PTA-Python題庫 編程題第五章(5-1~5-11)題解
https://blog.csdn.net/zimuzi2019/article/details/107020929

浙大PTA-Python題庫 編程題第六章(6-1~6-8)題解
https://blog.csdn.net/zimuzi2019/article/details/107020979

浙大PTA-Python題庫 編程題第七章(7-1)題解
https://tuenity.blog.csdn.net/article/details/102723092

注:第七章只有一道題,因為正則表達式學校尚不要求我就還沒看,所以這道題解的鏈接是另一個大佬的

浙大PTA-Python題庫 函數題(6-1~6-6)題解
https://blog.csdn.net/zimuzi2019/article/details/107021024

題目列表

5-1 輸出星期名縮寫

輸入一個1到7的數字,輸出對應的星期名的縮寫。
1 Mon
2 Tue
3 Wed
4 Thu
5 Fri
6 Sat
7 Sun

輸入格式:

輸入1到7之間數字

輸出格式:

輸出對應的星期名的縮寫

輸入樣例:

在這里給出一組輸入。例如:

1

輸出樣例:

在這里給出相應的輸出。例如:

Mon

題解

daysdict={1:"Mon",2:"Tue",3:"Wed",4:"Thu",5:"Fri",6:"Sat",7:"Sun"} print(daysdict[eval(input())])

5-2 圖的字典表示

圖的字典表示。輸入多行字符串,每行表示一個頂點和該頂點相連的邊及長度,輸出頂點數,邊數,邊的總長度。比如上圖0點表示:
{‘O’:{‘A’:2,‘B’:5,‘C’:4}}。用eval函數處理輸入,eval函數具體用法見第六章內置函數。

輸入格式:

第一行表示輸入的行數 下面每行輸入表示一個頂點和該頂點相連的邊及長度的字符串

輸出格式:

在一行中輸出頂點數,邊數,邊的總長度

輸入樣例:

在這里給出一組輸入。例如:

4 {'a':{'b':10,'c':6}} {'b':{'c':2,'d':7}} {'c':{'d':10}} {'d':{}}

輸出樣例:

在這里給出相應的輸出。例如:

4 5 35

題解

n=eval(input()) num,sum=0,0 for i in range(n):dic=eval(input())for j in dic:temp=dic[j]for key in temp:num+=1sum+=temp[key] print("{:d} {:d} {:d}".format(n,num,sum))

5-3 四則運算(用字典實現)

四則運算(用字典實現),比較c語言的switch語句。

輸入格式:

在一行中輸入一個數字 在一行中輸入一個四幟運算符(+,-,*,/) 在一行中輸入一個數字

輸出格式:

在一行中輸出運算結果(小數保留2位)

輸入樣例1:

在這里給出一組輸入。例如:

7 / 3

輸出樣例1:

在這里給出相應的輸出。例如:

2.33

輸入樣例2:

在這里給出一組輸入。例如:

10 / 0

輸出樣例2:

在這里給出相應的輸出。例如:

divided by zero

題解

caldict= {"+":"x+y","-":"x-y","*":"x*y","/":"x/y"} x,op,y=eval(input()),input(),eval(input()) try:print("{:.2f}".format(eval(caldict[op]))) except:print("divided by zero")

5-4 分析活動投票情況

利用集合分析活動投票情況。第一小隊有五名隊員,序號是1,2,3,4,5;第二小隊也有五名隊員,序號6,7,8,9,10。輸入一個得票字符串,求第二小隊沒有得票的隊員

輸入格式:

在一行中輸入得票的隊員的序列號,用逗號隔開。

輸出格式:

一行中輸出第二小隊沒有得票的隊員序號。

輸入樣例:

在這里給出一組輸入。例如:

1,5,9,3,9,1,1,7,5,7,7,3,3,1,5,7,4,4,5,4,9,5,10,9

輸出樣例:

在這里給出相應的輸出。例如:

6 8

題解

team=set(map(eval,input().split(','))) resultlist=[i for i in range(6,11) if i not in team] print(*resultlist)

5-5 統計字符出現次數

本題要求編寫程序,統計并輸出某給定字符在給定字符串中出現的次數。

輸入格式:

輸入第一行給出一個以回車結束的字符串(少于80個字符);第二行輸入一個字符。

輸出格式:

在一行中輸出給定字符在給定字符串中出現的次數。

輸入樣例:

programming is More fun! m

輸出樣例:

2

題解

string,char,cnt=input(),input(),0 for i in string:if(i==char):cnt+=1 print(cnt)

5-6 統計工齡

給定公司N名員工的工齡,要求按工齡增序輸出每個工齡段有多少員工。

輸入格式:

輸入首先給出正整數N(≤105),即員工總人數;隨后給出N個整數,即每個員工的工齡,范圍在[0, 50]。

輸出格式:

按工齡的遞增順序輸出每個工齡的員工個數,格式為:“工齡:人數”。每項占一行。如果人數為0則不輸出該項。

輸入樣例:

8 10 2 0 5 7 2 5 2

輸出樣例:

0:1 2:3 5:2 7:1 10:1

題解

n=eval(input()) timelist = list(map(int,input().split())) timedict={} for i in range(0,n):if timelist[i] not in timedict:timedict[timelist[i]]=1else:timedict[timelist[i]]+=1 for i in sorted(timedict.keys()):print("{}:{}".format(i,timedict[i]))

5-7 列表去重

輸入一個列表,去掉列表中重復的數字,按原來次序輸出!

輸入格式:

在一行中輸入列表

輸出格式:

在一行中輸出不重復列表元素

輸入樣例:

在這里給出一組輸入。例如:

[4,7,5,6,8,6,9,5]

輸出樣例:

在這里給出相應的輸出。例如:

4 7 5 6 8 9

題解

listin,listout=eval(input()),[] for i in listin:if i not in listout:listout.append(i) print(*listout)

5-8 能被3,5和7整除的數的個數(用集合實現)

輸入格式:

在一行中從鍵盤輸入2個正整數a,b(1<=a<b<=10000000),用空格隔開。

輸出格式:

在一行輸出大于等于a且小于等于b的能被3,5和7整除的數的個數。

輸入樣例1:

在這里給出一組輸入。例如:

10 100

輸出樣例1:

在這里給出相應的輸出。例如:

0

輸入樣例2:

在這里給出一組輸入。例如:

1000 100000

輸出樣例:

在這里給出相應的輸出。例如:

943

題解

a,b = map(int,input().split()) print(len([i for i in range(a,b+1) if i%3==0 and i%5==0 and i%7==0]))

5-9 求矩陣鞍點的個數

給定一組整數,還有一個目標數,在給定這組整數中找到兩個數字,使其和為目標數,如找到,解是唯一的。找不到則顯示 “no answer”。輸出的下標按從小到大排序。用一重循環加字典實現。

輸入格式:

在一行中給出這組數。 在下一行輸入目標數

輸出格式:

在一行中輸出這兩個數的下標,用一個空格分開。

輸入樣例1:

在這里給出一組輸入。例如:

2,7,11,15 9

輸出樣例1:

在這里給出相應的輸出。例如:

0 1

輸入樣例2:

在這里給出一組輸入。例如:

3,6,9 10

輸出樣例2:

在這里給出相應的輸出。例如:

no answer

題解

n,cnt=eval(input()),0 Matrix1=[[j for j in list(map(eval,input().split()))] for i in range(0,n)] Matrix2=[[Matrix1[j][i] for j in range(0,n)] for i in range(0,n)] rowmax=[max(Matrix1[i]) for i in range(0,n)] colmax=[min(Matrix2[i]) for i in range(0,n)] for index,value in enumerate(rowmax):for j in range(0,n):if Matrix1[index][j]==value:if colmax[j]==value:cnt+=1 print(cnt)

5-10 兩數之和

給定一組整數,還有一個目標數,在給定這組整數中找到兩個數字,使其和為目標數,如找到,解是唯一的。找不到則顯示 “no answer”。輸出的下標按從小到大排序。用一重循環加字典實現。

輸入格式:

在一行中給出這組數。 在下一行輸入目標數

輸出格式:

在一行中輸出這兩個數的下標,用一個空格分開。

輸入樣例1:

在這里給出一組輸入。例如:

2,7,11,15 9

輸出樣例1:

在這里給出相應的輸出。例如:

0 1

輸入樣例2:

在這里給出一組輸入。例如:

3,6,9 10

輸出樣例2:

在這里給出相應的輸出。例如:

no answer

題解

numlist=list(map(eval,input().split(","))) goalnum,flag=eval(input()),1 for index1,value1 in enumerate(numlist):for index2,value2 in enumerate(numlist[index1:]):if (value1+value2)==goalnum:flag=0print(index1,index2+index1) if flag:print("no answer")

5-11 字典合并

字典合并。輸入用字符串表示兩個字典,輸出合并后的字典,字典的鍵用一個字母或數字表示。注意:1和‘1’是不同的關鍵字!

輸入格式:

在第一行中輸入第一個字典字符串 在第二行中輸入第二個字典字符串

輸出格式:

在一行中輸出合并的字典,輸出按字典序。"1"的ASCII嗎為49,大于1,排序時1在前,"1"在后,其它的也一樣。

輸入樣例1:

在這里給出一組輸入。例如:

{1:3,2:5} {1:5,3:7}

輸出樣例1:

在這里給出相應的輸出。例如:

{1:8,2:5,3:7}

輸入樣例2:

在這里給出一組輸入。例如:

{"1":3,1:4} {"a":5,"1":6}

輸出樣例2:

在這里給出相應的輸出。例如:

{1:4,"1":9,"a":5}

題解

dict1,dict2=dict(eval(input())),dict(eval(input())) for i in dict2:if i not in dict1:dict1[i]=dict2[i]else:dict1[i]+=dict2[i] print("{",end="") s1=[i for i in dict1.keys() if type(i)==type(1)] s2=[i for i in dict1.keys() if type(i)==type('dict1')] s1.sort() s2.sort() c,n=0,len(dict1) for i in s1+s2:c+=1if type(i)==type(1):print("{}:{}".format(i,dict1[i]),end='')else:print('"{}":{}'.format(i,dict1[i]),end='')if c!=n:print(',',end='') print("}")

總結

以上是生活随笔為你收集整理的浙大PTA-Python题库 编程题第五章(5-1~5-11)题解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。