본문 바로가기

BOJ/수학

BOJ : 1037 약수 (파이썬)

728x90

소스코드

import sys

n = int(sys.stdin.readline())

lst = list(map(int , sys.stdin.readline().split()))

lst.sort()

if len(lst) % 2 == 1 :
    print(lst[(len(lst)//2)]**2)
else :
    print(lst[0] * lst[-1])

풀이

정렬 해준후 앞뒤를 곱해주었다.

약수의 갯수가 홀수인 경우에는 가운데 약수를 제곱 해주었다.

 

문제

https://www.acmicpc.net/problem/1037

 

1037번: 약수

첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되

www.acmicpc.net

 

728x90