資源限制 時間限制:1.0s 內存限制:512.0MB 問題描述 給定一個以秒爲單位的時間t,要求用「<H>:<M>:<S>」的格式來表示這個時間。<H>表示時間,<M>表示分鐘,而<S>表示秒,它們都是整數且沒有前導的「0」。例如,若t=0,則應輸出是「0:0:0」;若t=3661,則輸出「1:1:1」。 輸入格式 輸入只有一行,是一個整數t(0<=t<=86399)。 輸出格式 輸出只有一行,是以「<H>:<M>:<S>」的格式所表示的時間,不包括引號。 樣例輸入 0 樣例輸出 0:0:0 樣例輸入 5436 樣例輸出 1:30:36
s = int(input()) if s >= 0 and s <= 86399: H = s//3600
s = s - H*3600 M = s//60
s = s - M*60 print("{}:{}:{}".format(H, M, s))
num = int(input())#輸入及字符轉爲整型 m,s=divmod(num,60)#整數賦值給m,餘數賦值給s h,m=divmod(m,60)#同理 print("{}:{}:{}".format(h,m,s))#格式化輸出
while True: try: t = int(input()) h = t // 3600
m = t%3600 // 60
s = t % 3600 % 60 print(str(h)+':'+str(m)+':'+str(s)) except: break
t = int(input()) a = 0 b = 0 c = 0 a = int(t/3600) b = int((t%3600)/60) c = int((t%3600)%60) print(str(a)+":"+str(b)+":"+str(c))
法三和法四使用字符串轉換編程
資源限制 時間限制:1.0s 內存限制:512.0MB 問題描述 給定兩個僅由大寫字母或小寫字母組成的字符串(長度介於1到10之間),它們之間的關係是如下4中狀況之一: 1:兩個字符串長度不等。好比 Beijing 和 Hebei 2:兩個字符串不只長度相等,並且相應位置上的字符徹底一致(區分大小寫),好比 Beijing 和 Beijing 3:兩個字符串長度相等,相應位置上的字符僅在不區分大小寫的前提下才能達到徹底一致(也就是說,它並不知足狀況2)。好比 beijing 和 BEIjing 4:兩個字符串長度相等,可是即便是不區分大小寫也不能使這兩個字符串一致。好比 Beijing 和 Nanjing 編程判斷輸入的兩個字符串之間的關係屬於這四類中的哪一類,給出所屬的類的編號。 輸入格式 包括兩行,每行都是一個字符串 輸出格式 僅有一個數字,代表這兩個字符串的關係編號 樣例輸入 BEIjing beiJing 樣例輸出 3
s1 = str(input()) s2 = str(input()) len1 = len(s1) len2 = len(s2) if len1 != len2: print("1") else: if s1 == s2: print("2") elif s1.lower() == s2.lower(): print("3") elif s1.lower() != s2.lower(): print("4")
import re def judge(s1, s2): if len(s1) != len(s2): return 1
if s1 == s2: return 2
if len(s1) == len(s2): if re.search(s1,s2,re.IGNORECASE): return 3
else: return 4 print(judge(input(),input()))
關於法二中的re模塊:app
re.IGNORECASE是compile函數中的一個匹配模式。
re.IGNORECASE的意思就是忽略大小寫。
爬蟲中運用比較多
資源限制 時間限制:1.0s 內存限制:512.0MB 問題描述 求出區間[a,b]中全部整數的質因數分解。 輸入格式 輸入兩個整數a,b。 輸出格式 每行輸出一個數的分解,形如k=a1*a2*a3...(a1<=a2<=a3...,k也是從小到大的)(具體可看樣例) 樣例輸入 3 10 樣例輸出 3=3
4=2*2
5=5
6=2*3
7=7
8=2*2*2
9=3*3
10=2*5 提示 先篩出全部素數,而後再分解。 數據規模和約定 2<=a<=b<=10000
# 判斷素數 def primeNumber(n): for i in range(2,int(n**0.5)+1): if n % i == 0: return False else: return True #質因數分解 def qualityDecomposition(tmp): for i in range(2, tmp + 1): if tmp % i == 0: tmp = tmp // i
tmpL.append(i) qualityDecomposition(tmp) break # 輸入 num = input().split() a = int(num[0]) b = int(num[1]) while a != b+1: tmpL = [] # 存放質因數 if primeNumber(a): print("{}={}".format(a, a)) else: print("{}=".format(a, a),end="") qualityDecomposition(a) for i in range(len(tmpL)): print(tmpL[i],end='') if i == len(tmpL) - 1: print('') else: print("*",end='') a += 1
資源限制 時間限制:1.0s 內存限制:512.0MB 問題描述 給定一個N階矩陣A,輸出A的M次冪(M是非負整數) 例如: A =
1 2
3 4 A的2次冪 7 10
15 22 輸入格式 第一行是一個正整數N、M(1<=N<=30, 0<=M<=5),表示矩陣A的階數和要求的冪數 接下來N行,每行N個絕對值不超過10的非負整數,描述矩陣A的值 輸出格式 輸出共N行,每行N個整數,表示A的M次冪所對應的矩陣。相鄰的數之間用一個空格隔開 樣例輸入 2 2
1 2
3 4 樣例輸出 7 10
15 22
while True: try: def matrix_mul(matrix1,matrix, n): c = [[0 for m1 in range(n)]for m in range(n)] for i in range(n): for j in range(n): for k in range(n): c[i][j] += matrix1[i][k] * matrix[k][j] return c n = list(map(int, input().split())) s = [] result = s for j in range(n[0]): s.append(list(map(int, input().split()))) if n[1] == 0: for i in range(0, n[0]): for j in range(0, n[0]): if i == j: result[i][j] = 1
else: result[i][j] = 0
else: for k in range(n[1]-1): result = matrix_mul(result,s,n[0]) for i in range(0, result.__len__()) : for j in range(0, result[i].__len__()) : print(result[i][j],'', end='') print('') except: break