ACM的Python版輸入輸出
目錄
一、輸入部分
1. 單樣例輸入
(1)只需輸入一行
題目描述:
對10個整數從小到大排序。
輸入:
4 85 3 234 45 345 345 122 30 12
輸出:
3 4 12 30 45
程式碼:
listt = map(lambda x:int(x), raw_input().split()) # 萬能的輸入語句
listt.sort() # 呼叫標準庫
for i in listt :
print i, # 輸出
注:python2.7的程式碼。
2. 多樣例輸入
(1)多樣例輸入,無明確樣例個數
有多組輸入資料,但沒有具體的告訴你有多少組,只是讓你對應每組輸入,應該怎樣輸出。
題目要求:
多樣例輸入一組整數,每組資料佔一行,每組資料中有兩個數,要求輸出兩個數之和。每個結果佔一行。
輸入:
1 3
2 4
3 5
輸出:
4
6
8
程式碼:
while True:
try:
a, b = map(int, raw_input().strip().split())
print (a+b)
except EOFError:
break
(2)要輸入N行
輸入一個整數,告訴我們接下來有多少組資料,然後在輸入每組資料的具體值。
輸入
學生數量N佔一行, 每個學生的學號、姓名、三科成績佔一行,空格分開。成績是正整數
輸出
各門課的平均成績 最高分的學生的資料(包括學號、姓名、3門課成績),平均成績用整數表示
樣例輸入
2
1 blue 90 80 70
b clan 80 70 60
樣例輸出
85 75 65
1 blue 90 80 70
程式碼:
tcase = int(raw_input().strip())
def f(x):
if ord(x[0]) < 90: # 判斷是數字還是字母
return int(x)
return x
a = [map(f, raw_input().split()) for i in range(tcase)]
print sum([x[2] for x in a])/tcase, sum([x[3] for x in a])/tcase, sum([x[4] for x in a])/tcase # 列印平均數
listt=[sum(x[2:]) for x in a]
maxx=max(listt)
for i in range(tcase): # 找到最大值的索引
if listt[i] ==maxx:
break
print str(a[i]).replace(', ',' ').replace('\'','')[1:-1]+' ' #列表一排萬能輸出,但輸出得不好看,不用在意
在舉一個例子:
題目要求:
輸入N組資料樣例,每組資料佔一行,每組資料中有兩個數,要求輸出兩個數之和。每個結果佔一行。
輸入:
3
1 2
2 3
3 4
輸出:
3
5
7
程式碼:
tcase = int(raw_input().strip())
for case in range(tcase):
a, b = map(int, raw_input().strip().split())
print (a + b)
(3)多樣例輸入,指定結束符號
有多組輸入資料,沒有具體的告訴你有多少組,但是題目卻告訴你遇見什麼結束。
題目要求:
多樣例輸入一組整數,每組資料佔一行,每組資料中有兩個數。要求輸出兩個數之和,每個結果佔一行。輸入 0 0 表示輸入結束。
輸入:
1 2
3 4
5 6
0 0
輸出:
3
7
11
程式碼:
while True:
a, b = map(int, raw_input().strip().split())
if a == 0 and b == 0:
break
print (a + b)
(4)輸入N組,指定結束符號
輸入有N組,並且題目告訴你每組輸入遇見什麼結束,與第三種不同之處在於,每組輸入都有相應的細化。
題目要求:
輸入N組資料樣例,每組資料佔一行,每組資料中有兩個數,要求輸出兩個數之和。每個結果佔一行。輸入 0 0 表示輸入結束。
輸入:
3
1 2
3 4
0 0
輸出:
3
7
程式碼:
tcase = int(raw_input().strip())
for case in range(tcase):
a, b = map(int, raw_input().strip().split())
if a == 0 and b == 0:
break
print (a + b)
3.多樣例複雜輸入
(1)多樣例輸入,無明確樣例個數
有多種輸入資料,對於每組輸入資料的第一個數代表該組資料接下來要輸入資料量。
題目描述:
輸入多組資料樣例,每組資料佔一行,對於每一行的輸入,又劃分為第一個數和其他的數,第一個數代表那一組資料一共有多少輸入。輸出其它資料相加之和。
輸入:
1 2
2 1 2
3 1 2 3
4 1 2 3 4
輸出:
2
3
6
10
程式碼:
while True:
try:
data = map(int, raw_input().strip().split())
n, array = data[0], data[1:]
sum = 0
for i in range(n):
sum += array[i]
print (sum)
except EOFError:
raise
(2)要輸入N行
這次的輸入實現輸入一個整數,告訴我們有多少行,在輸入每一行。對於每一行的輸入,又劃分為第一個數和其他的數,第一個數代表那一組資料一共有多少輸入。
題目描述:
輸入N組資料樣例,N告訴我們有N行資料。對於每一行的輸入,又劃分為第一個數和其他的數,第一個數代表那一組資料一共有多少輸入。輸出其它資料相加之和。
輸入:
4
1 2
2 1 2
3 1 2 3
4 1 2 3 4
輸出:
2
3
6
10
程式碼:
tcase = int(raw_input().strip())
for case in range(tcase):
data = map(int, raw_input().strip().split())
n, array = data[0], data[1:]
sum = 0
for i in range(n):
sum += array[i]
print (sum)
Reference
[1] https://www.zybuluo.com/diyer22/note/310572#%E4%BA%8C-%E8%BE%93%E5%85%A5%E9%83%A8%E5%88%86
[2] https://blog.csdn.net/luovilonia/article/details/40860323
相關文章
- python ----輸入輸出 變數Python變數
- Python輸入和輸出(IO)Python
- python 標準輸入輸出Python
- Python資料的輸入與輸出Python
- python:檔案的輸入與輸出Python
- 基本的python知識 (輸入和輸出)Python
- 演算法題 - ACM 模式中常用輸入輸出用法總結演算法ACM模式
- 新手學python之Python的輸入輸出函式Python函式
- Python教程:7. 輸入和輸出Python
- python基礎篇-輸入和輸出Python
- 輸入輸出
- linux中的輸入與輸出管理(重定向輸入,輸出,管道符)Linux
- 資料的輸入輸出
- Scanner, BufferedReader, InputStreamReader 與ACM模式輸入ACM模式
- 輸入輸出流
- Java 輸入輸出流Java
- 1.輸入輸出
- 【C++】輸入輸出C++
- 輸入輸出系統
- shell——shell輸入輸出
- Java------簡單的輸入/輸出Java
- AUTOCAD——圖形的輸入與輸出
- Java —— 標準輸入輸出Java
- Java基礎輸入輸出Java
- C語言輸入輸出C語言
- 03 資料輸入-輸出
- 格式化輸入輸出
- Shell輸入\輸出重定向
- C語言之輸入輸出C語言
- 常用輸入輸出函式函式
- 排序,檔案輸入輸出排序
- 重學java中的輸入輸出流Java
- 直播app原始碼,Java的輸入輸出APP原始碼Java
- 7-1 jmu-python-輸入輸出-計算字串中的數Python字串
- Python語言基礎(四):運算子、基本輸入和輸出Python
- 06Numpy輸入與輸出
- 1.變數and輸入輸出變數
- 格式化輸入和輸出