今日先來無聊就把1001-1005的題目刷了一遍,題目本身沒有難度,主要是為了熟練我最近學的python,好了正文開始。
由於第一題是直接在文字框裡敲**所以沒儲存下來,而且也不難,就不貼**了
1002
很簡單只需要乙個陣列即可,主要是ord()函式的使用
chinese = ['ling','yi','er','san','si','wu','liu','qi','ba','jiu']
a = raw_input()
s = 0
for i in a:
s += ord(i) - 48
cs = str(s)
for i in cs:
print(chinese[ord(i)-48]),
1003這道題目難度主要在能否真正理解字串內部的關係,主要關係分析如下:
1. pt中必須要有a
2. 而且a的數量就剛好是 p之前的a的數量與t之後的a的數量的倍數關係
3. 無其他多餘字元這個很明顯
n = input()
for i in range(n):
flagp = -1
flagt = -1
isright = true;
s = raw_input()
for j in range(len(s)):
if s[j] == 'p':
if flagp == -1:
flagp = j
else:
isright = false
break;
elif s[j] == 't':
if flagt == -1:
flagt = j
else:
isright = false
break;
elif s[j] != 'a':
isright = false
break
if isright == false:
print('no')
else:
if flagt < flagp+2 :
print('no')
elif len(s)-flagt-1 != (flagt-flagp-1)*flagp:
print('no')
else:
print('yes')
1004很簡單,讀入,比較,記錄即可
import string #注意
n = input()
hstuname = ''
lstuname = ''
hstuid = ''
lstuid = ''
hs = -1
ls = 101
for i in range(n):
s = map(str,raw_input().split())
temp = string.atoi(s[2],10) #字串轉數字
if temp > hs:
hs = temp
hstuname = s[0]
hstuid = s[1]
if temp < ls:
ls = temp
lstuname = s[0]
lstuid = s[1]
print "%s %s\n%s %s" % (hstuname,hstuid,lstuname,lstuid)
1005第一題的進化,具體看**,把每個資料都先認為是所需的結果,然後一旦後面有出現,則刪除
n = input()
nums = set() #中間產生的資料
outer = set() #輸出結果儲存
x = map(int,raw_input().split())
for i in x:
outer.add(i)
while i != 1:
if i in nums:
if i in outer:
outer.remove(i)
break
else:
nums.add(i)
if i % 2 == 0:
i /= 2
else:
i = (i*3+1)/2
s = [i for i in outer]
s.sort(reverse=true) #逆序排序
for i in s:
print(i),
我的第一篇部落格就到此結束,歡迎提出意見,本人也是才學python不久,做上面的題目也是為了練手而已
最後貼上桌布一張 也是我正在用的桌面桌布
PAT乙級 陣列元素迴圈右移問題(Python)
乙個陣列a中存有n n 0 個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向右移m m 0 個位置,即將a中的資料由 a0a1 an 1 變換為 an m an 1 a0 a1 an m 1 最後m個數迴圈移至最前面的m個位置 如果需要考慮程式移動資料的次數盡量少,要如何設計移動的方法?輸入格...
NLP實戰 基於列舉實現中文分詞(python)
邏輯 例子 我們經常有意見分歧 詞典 我們 經常 有 有意見 意見 分歧 列舉滿足詞典的所有可能情況 我們 經常 有 意見 分歧 我們 經常 有意見 分歧 實現所需的資料需求 給定詞典 我們 學習 人工 智慧型 人工智慧 未來 是 另外我們給定unigram概率 p 我們 0.25,p 學習 0.1...
PAT學習 乙級(中文) 1002
讀入乙個正整數 n,計算其各位數字之和,用漢語拼音寫出和的每一位數字。1.讀取乙個正整數,計算其各位數字之和,則需用字串形式來表示正整數n。2.計算各位數字之和,需要將輸入的字串每位轉化為數字,進行相加。3.用漢語拼音寫出和的每一位數字,則表明每乙個數字都需對應乙個漢語字串,則可用結構體來表示。4....