今天要來解APCS的題目,這次是105年10月29的實作題第二題,那我們就開始吧!

a=input().split()       #輸入NM
N=int(a[0])             
M=int(a[1])             
list=[]
sum=0                   #輸出第一行的sum
for i in range(0,N):                 #找出每一群的最大數字
    b=input().split()
    number = 0
    for j in range(0,M):
        if int(b[j]) > number:
            number=int(b[j])
    sum=sum+number                  #加到sum
    list.append(number)             #加入清單(輸出第二行會用到)
print(sum)        
#以下為輸出第二行=====================
n=0
word=[]
for k in range(0,N):            #找出因數
    if sum%(list[k]) == 0:
        n=n+1
        word.append(list[k])
if n==0:                        #如果無,打印-1
    print('-1')
if n==1:                        #如果有,打印出因數
    print(word[0])
else:
    for l in range(0,n):
        word[l]=str(word[l])
    d=" ".join(word)
    print(d)
   
解釋我有寫在旁邊,這一次的內容比較難,大家就參考看看。