[백준] 1010 : 다리
문제 링크
https://www.acmicpc.net/problem/1037
문제
양수 A가 N의 진짜 약수가 되려면, N이 A의 배수이고, A가 1과 N이 아니어야 한다.
어떤 수 N의 진짜 약수가 모두 주어질 때, N을 구하는 프로그램을 작성하시오.
입력
첫째 줄에 N의 진짜 약수의 개수가 주어진다.
이 개수는 50보다 작거나 같은 자연수이다.
둘째 줄에는 N의 진짜 약수가 주어진다.
1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되지 않는다.
출력
첫째 줄에 N을 출력한다. N은 항상 32비트 부호있는 정수로 표현할 수 있다.
예제
입력
6
3 4 2 12 6 8
출력
24
정답 및 풀이
import sys
input = sys.stdin.readline
n = int(input())
arr=list(map(int,input().split()))
arr.sort()
print(min(arr)*max(arr))
- import sys
- 파이썬의 sys 모듈을 불러와 빠른 입력을 사용하기 위한 준비를 한다.
- input = sys.stdin.readline
- 기본 input() 대신 sys.stdin.readline()을 사용해 입력 속도를 향상시킨다.
- n = int(input())
- 정수의 개수 n을 입력받는다.
- 이후 배열의 길이를 의미한다.
- arr = list(map(int, input().split()))
- 공백으로 구분된 n개의 정수를 입력받아 리스트 arr에 저장한다.
- arr.sort()
- 배열을 오름차순으로 정렬한다.
- 정렬 후 arr[0]은 최솟값, arr[-1]은 최댓값이 된다.
- print(min(arr) * max(arr))
- 배열의 최솟값과 최댓값을 각각 구한 뒤 곱해서 출력한다.
놓기 (Python/파이썬)
'백준' 카테고리의 다른 글
| [백준] 26069 : 붙임성 좋은 총총 (Python/파이썬) (0) | 2026.01.02 |
|---|---|
| [백준] 25192 : 인사성 밝은 곰곰이 (Python/파이썬) (1) | 2025.12.18 |
| [백준] 1010 : 다리 놓기 (Python/파이썬) (0) | 2025.12.18 |
| [백준] 11050 : 이항 계수 1 (Python/파이썬) (0) | 2025.12.18 |
| [백준] 2346 : 풍선 터뜨리기 (Python/파이썬) (0) | 2025.12.16 |