- 0370038003300381586930599574
雞兔同籠
描述
一個籠子里面關了若干只雞和兔子(雞有2只腳,兔子有4只腳,沒有例外)。已經知道了籠子里腳的總數為a,則籠子里面至少有多少只動物,至多有多少只動物?
輸入格式
第1行輸入一個正整數n(n≤1000),表示測試數據的組數n,接下來n組測試數據每組一行,每行一個正整數a(a<32768)。提示: 輸入使用input(),不要增加額外的提示信息 。
輸出格式
輸出包含n行,每行對應一個輸入,包含兩個正整數,第一個是最少的動物數,第二個是最多的動物數,兩個正整數之間用一個空格分開。輸出包含n行,每行對應一個輸入,包含兩個正整數,第一個是最少的動物數,第二個是最多的動物數,兩個正整數之間用一個空格分開。 如果沒有滿足要求的答案,則輸出兩個0。
輸入輸出示例
輸入 輸出 示例1 2
3
20
0 0
5 10
n = int(input()) l=list() for i in range(n): a=int(input()) if a%2!=0: min=max=0 else: j=a/4 i=a%4/2 min=int(i+j) max=int(a/2) l+=[(min,max)] for b,c in l: print (b,c)
-
算24
描述
給出4個小於10的正整數,可以使用加、減、乘、除4種運算以及括號把4個數連接起來得到一個表達式。現在問題是,是否存在一種方式使得所得表達式的結果等於24。
這里加、減、乘、除以及括號的運算結果和運算優先級跟平常定義一致。
例如,對於5,5,5,1,可知5×(5-1/5)=24。又如,對於1,1,4,2無論如何都不能得到24
輸入格式
在代碼中的輸入部分輸入4個小於10的正整數。輸入使用input(),不要增加額外的提示信息。
輸出格式
對於每一組測試數據,輸出一行,如果可以得到24,輸出"YES"其算法;否則“NO”。
輸入輸出示例
輸入 輸出 示例 1 5
5
5
1
YES
((5-(1/5))*5)示例2 1
1
1
1
NO from itertools import permutations n1 = input() n2 = input() n3 = input() n4 = input() n = n1+n2+n3+n4 sum = 1 for i in n: sum *= eval(i) if sum < 24: print("NO") exit() notation = ['+', '-', '*', "/"] st = set() num = 0 number = set(permutations(n)) for i in notation: s = i t1 = notation.copy() t1.remove(i) for j in t1: s += j t2 = t1.copy() t2.remove(j) for p in t2: s += p st.add(s) s = i+j s = i newst = set() for i in number: for j in st: newst.add(i[0]+j[0]+i[1]+j[1]+i[2]+j[2]+i[3]) all = set() for i in newst: i1 = '('+i[0:3]+')'+i[3:] i2 = i[0:2]+'('+i[2:5]+')'+i[5:] i3 = i[0:4] + '(' + i[4:] + ')' i4 = '(('+i[0:3]+')'+i[3:5]+")"+i[5:] i5 = i[0:2]+'(('+i[2:5]+')'+i[5:]+")" i6 = '(' + i[0:2] + '(' + i[2:5] + '))' + i[5:] i7 = i[0:2]+'('+i[2:4]+'('+i[4:]+"))" all.add(i1) all.add(i2) all.add(i3) all.add(i4) all.add(i5) all.add(i6) all.add(i7) result = [] for i in all: try: if eval(i) == 24: result.append(i) except: pass print("YES") print("("+sorted(result)[0]+")")
- 3003000370038003300381586930672300
溫度轉換異常處理
描述
溫度的刻畫有兩個不同體系:攝氏度(Celsius)和華氏度(Fabrenheit)。
請編寫程序將用戶輸入華氏度轉換為攝氏度,或將輸入的攝氏度轉換為華氏度。
轉換算法如下:(C表示攝氏度、F表示華氏度)
C = ( F - 32 ) / 1.8
F = C * 1.8 + 32
要求如下:
(1) 輸入輸出的攝氏度采用大寫字母 C 或小寫字母 c 結尾,溫度可以是整數或小數,如:12.34C 指攝氏度 12.34 度;
(2) 輸入輸出的華氏度采用大寫字母 F 或小字字母 f 結尾,溫度可以是整數或小數,如:87.65F 指華氏度 87.65 度;
(3) 考慮異常輸入的問題,如輸入不合法則拋出異常;
(4) 使用input()獲得測試用例輸入時,不要增加提示字符串。
輸入格式
輸入一個帶單位的溫度
輸出格式
輸入正常,輸出轉換后的溫度,保留小數點后2位小數。
當用戶輸入值末位不是“C、c、F、f”中的一個時,輸出"輸入錯誤,末位只能是'C','c','F','f'"
當檢測到NameError錯誤時輸出'試圖訪問的變量名不存在'
當檢測到SyntaxError 錯誤時輸出'存在語法錯誤'
輸入輸出示例
輸入 輸出 示例 1 102F
102D
AC
102ff
38.89C
輸入錯誤,末位只能是'C','c','F','f'
試圖訪問的變量名不存在
存在語法錯誤
try: n=input() if n[-1] in ['F','f']: C=(eval(n[0:-1])-32)/1.8 print("{:.2f}C".format(C)) elif n[-1] in ['C','c']: F=eval(n[0:-1])*1.8+32 print("{:.2f}F".format(F)) else: print("輸入錯誤,末位只能是'C','c','F','f'") except NameError: print("試圖訪問的變量名不存在") except SyntaxError: print("存在語法錯誤")
- 03000370038003300381586930705846
同符號數學運算
描述
讀入一個整數N,分別計算如下內容:
1. N的絕對值;
2. N與10進行同符號加法、減法和乘法運算,同符號運算指使用N的絕對值與另一個數進行運算,運算結果的絕對值被賦予N相同的符號,其中,0的符號是正號。
將上述4項結果在一行輸出,采用空格分隔,輸出結果均為整數。
輸入
示例1:100
輸出
示例1:100 110 90 1000
N=int(input()) if N>=0: print(N, N+10, abs(N-10), N*10) else: print(-N, -(abs(N)+10), -abs((abs(N)-10)), N*10)
-
三角函數計算
描述
根據下面公式計算並輸出x的值,a和b的值由用戶輸入,括號里的數字是角度值, 圓周率的值使用數學常數math.pi。
輸入格式
輸入包括兩行, 每行一個數字。
輸出格式
一個數值
輸入輸出示例
輸入 輸出 示例 1 2
5-0.9209814967618768 import math a=eval(input()) b=eval(input()) c=math.sin(math.pi/3) d=math.cos(math.pi/3) x=(-b+(2*a*c*d)**0.5)/(2*a) print(x)
-
棋盤放米
描述
相傳古代印度國王舍罕要褒賞他的聰明能干的宰相達依爾 (國際象棋發明者),問他需要什么,達依爾回答說:“國王只要在國際象棋的棋盤第一個格子里放一粒麥子,第二個格子里放兩粒,第三個格子里放四粒,按此比例以后每一格加一倍,一直放到64格(國際象棋棋盤是8×8=64格),我就感恩不盡,其他的我什么也不要了,”國王想:“這有多少,還不容易!”讓人扛來一袋小麥,但不到一會兒全用沒了,再來一袋很快又沒有了,結果全印度的糧食全部用完還不夠,國王納悶,怎樣也算不清這筆賬,請你幫國王計算一下,共需多少粒麥子,寫出程序。
輸入格式
該題目沒有輸入
輸出格式
一個正整數
s=1 a=1 for i in range(1,64): a=a*2 s=s+a print(s)
- 0370038003300381586930784901
雞兔同籠
描述
大約在1500年前,《孫子算經》中就記載了這個有趣的問題。書中是這樣敘述的:
今有雉兔同籠,上有三十五頭,下有九十四足,問雉兔各幾何?
這四句話的意思是:
有若干只雞兔同在一個籠子里,從上面數,有35個頭,從下面數,有94只腳。問籠中各有多少只雞和兔?請編一個程序,用戶在同一行內輸入兩個整數,代表頭和腳的數量,編程計算籠中各有多少只雞和兔,假設雞和兔都正常,無殘疾。如無解則輸出Data Error!
a,b = input().split() #讀入兩個數到a b中 a,b = map(int,input().split(',')) #讀入兩個整數到a,b中,輸入的數用逗號分隔 a,b = map(int,input().split(' ')) #讀入兩個整數到a,b中,輸入的數用空格分隔
輸入格式
在一行里輸入兩個整數,用空格分隔
輸出格式
在一行里輸出兩個正整數,分別是雞和兔的數量,用空格分隔
如無解則輸出Data Error!
輸入輸出示例
輸入 輸出 示例 1 35 94
-4 16
23 12
Data Error!
a,b = map(int,input().split(' ')) if(a > 0 and b >0 and b % 2 == 0 and b-2*a>0): for j in range(1,a+1): t=a-j if 4*t+2*j==b: print("{} {}". format(j,t)) else: print("Data Error!")
- 370038003300381586930889055
數列求和
描述
給定某數字a(1≤a≤9)以及非負整數n(0≤n≤100000),求數列之和sum=a+aa+aaa+⋯+aa⋯a(n個a)。例如a=2, n=3時,sum=2+22+222=246。
輸入格式
輸入有兩行:
第一行輸入數字a
第二行輸入非負整數n
輸出格式
輸出其N項數列之和S的值。
輸入輸出示例
輸入 輸出 示例 1 2
3
1
0
246
0
a=eval(input()) n=int(input()) sum=0 b=0 for i in range(n): b=b+a*(10**i) sum=sum+b print(sum)