Where who wants to meet someone
백준 Swift [1037] 약수 본문
728x90
난이도
브론즈 I
문제
https://www.acmicpc.net/problem/1037
내 답안
let numberOfDivisor = Int(readLine()!)!
let divisors = readLine()!.split(separator: " ").map { Int($0)! }.sorted()
print(divisors[0] * divisors[numberOfDivisor - 1])
- 처음에는 주어진 약수의 개수가 1개냐 아니냐, 최소공배수를 통한 값 구하기 등등을 해보았는데 실패.
- 정렬한 값을 어떻게 쓸 수 없을까 하다가 약수의 최소 값과 최대 값을 곱하니 원하는 값이 나오는 것을 확인하여 문제를 해결할 수 있었음.
- array.min(), max()를 써도 되지만 옵셔널 값이어서 0(첫 값), numberOfDivisor - 1(마지막 값)을 사용해서 가져왔다.
'백준 알고리즘 문제 기록 > 심화 2' 카테고리의 다른 글
백준 Swift [20920] 영단어 암기는 괴로워 (0) | 2023.09.12 |
---|---|
백준 Swift [2108] 통계학 (0) | 2023.09.12 |
백준 Swift [26069] 붙임성 좋은 총총이 (0) | 2023.09.11 |
백준 Swift [25192] 인사성 밝은 곰곰이 (0) | 2023.09.11 |