Python語言基礎與應用 北京大學期末程式設計考試

2021-10-01 10:10:09 字數 2475 閱讀 9239

1、兩組數的差異

題目內容:

給出兩組相同數量的整數,求這兩組整數的差異估算,即:對應數差值平方之和。

第一組為a1, a2…an

第二組為b1, b2…bn

求 (a1-b1)**2+(a2-b2)**2+…+(an-bn)**2

輸入格式:兩行,每行是一組整數,用空格隔開。

輸出格式:乙個整數。

a=list(map(int,input().split()))

b=list(map(int,input().split()))

sum=0

for i in range(len(a)):sum+=(a[i]-b[i])**2

print(sum)

2、回文字串

題目內容:

給定乙個字串,判斷它是否是回文字串(即類似於peep, 12321這樣的對稱字串),如果是輸出true,不是則輸出false。

判斷過程中假定只考慮字母和數字字元,而且忽略字母的大小寫和其它符號(如空格、標點符號等)。

輸入格式:共一行,為乙個字串。

輸出格式:共一行,為true或false。

a=input()

b=for i in a:

i,j=0,len(b)-1

while i<=j:

if b[i]!=b[j]:

print(false)

break

i+=1

j-=1

else:print(true)

3、0的組合

題目內容:

給定乙個包含若干個整數(可能存在重複整數)的列表,判斷其中是否存在三個元素a,b,c,使得a+b+c=0?找出所有滿足條件且不重複的這樣的三個數的組合。

輸入格式:共一行,列表中元素以空格隔開。

輸出格式:共一行,為不重複組合的個數,不存在這樣的組合就輸出0

nums=list(map(int,input().split()))

nums.sort()

res =

i = 0

for i in range(len(nums)):

if i == 0 or nums[i] > nums[i - 1]:

if nums[i] > 0: break

l = i + 1

r = len(nums) - 1

while l < r:

s = nums[i] + nums[l] + nums[r]

if s == 0:

l += 1

r -= 1

while l < r and nums[l] == nums[l - 1]:

l += 1

while r > l and nums[r] == nums[r + 1]:

r -= 1

elif s > 0:

r -= 1

else:

l += 1

print(len(res))

4、乘積的列表

題目內容:

給定乙個包含若干個整數的列表alist,要求返回輸出列表blist,blist中的元素為除與alist對應位置上的元素之外其餘各元素的乘積。

輸入格式:共一行,列表中的元素以空格隔開。

輸出格式:共一行,為乙個列表。

a=list(map(int,input().split()))

b=;sm=1

for i in range(len(a)):

for j in range(len(a)):

if j!=i:sm*=a[j]

sm=1

print(b)

5、破譯密碼

題目內容:

a國情報局抓獲敵國間諜一名,從間諜身上搜出了若干密電,在嚴刑逼供之下,間諜說出了密電加密方法:將明文電報(僅由大寫字母構成)中的所有字母均替換為字母表中向後看的第n個字母,如果超過z,則從a繼續數,這樣就得到了密文,比如attack,向後看第2個字母,就加密為cvvcfm。

可還沒等到間諜說出加密用的金鑰(數字n),就被臥底開槍打死,間諜臨死前在地板上畫了bye三個字母。

情報局長看著一條條密電發了愁,但機智的你已經發現,原來間諜在告訴我們,所有密電的明文都以bye結尾!

請編寫程式破譯這些密電吧!

輸入格式:共一行字串,全部由大寫字母構成的密文。

輸出格式:共一行字串,破譯後的明文。

a=input()

s=''

n=ord(a[-1])-69 if ord(a[-1])>69 else ord(a[-1])-65+90-69+1

for i in a:

if ord(i)-n<65:

s+=chr(ord(i)-n+26)

else:s+=chr(ord(i)-n)

print(s)

Python語言基礎與應用 北京大學 測試章節三

1 關於python中的字串,說法錯誤的是 字串以 0標誌字串的結束。2 關於python中的複數,說法錯誤的是 實部和虛部都是整數。3 下列表示式中返回為true的是 0x56 56 4 print a b c 輸出true 5 x big y 2 print x y 字串與數值連線,報錯 6 x...

Python語言基礎與應用 北京大學 測試章節四

1 a 3 alist 1,2,3,4,5 print a in alist 輸出 false。3在alist裡,3 不在 2 alist sorted 1,2,3 reverse true blist reversed 1,2,3 print alist blist 輸出 false revers...

MOOC Python語言基礎與應用

容器型別 字典 dict 貼標籤的資料 標籤收納盒 給資料貼上標籤,就可以通過具有特定含義的名字或者別的記號來獲取資料。現實生活中的字典 通過標籤 或者關鍵字 來索引資料,區別於列表或元組通過連續的整數來索引 ps 注意區別 標籤 key 和資料值 value 字典容器中儲存著一系列的key val...