반응형
1. 나머지 구하기
정수 num1, num2가 매개변수로 주어질 때, num1를 num2로 나눈 나머지를 return 하도록 solution 함수를 완성해주세요.
제한사항
- 0 < num1 ≤ 100
- 0 < num2 ≤ 100
입출력 예
num1 | num2 | result |
3 | 2 | 1 |
10 | 5 | 0 |
입출력 예 설명
입출력 예 #1
- num1이 3, num2가 2이므로 3을 2로 나눈 나머지 1을 return 합니다.
입출력 예 #2
- num1이 10, num2가 5이므로 10을 5로 나눈 나머지 0을 return 합니다.
제출 답안
import Foundation
func solution(_ num1: Int, _ num2: Int) -> Int {
return num1 % num2
}
2. 중앙값 구하기
중앙값은 어떤 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값을 의미합니다. 예를 들어 1, 2, 7, 10, 11의 중앙값은 7입니다. 정수 배열 array가 매개변수로 주어질 때, 중앙값을 return 하도록 solution 함수를 완성해보세요.
제한사항
- array의 길이는 홀수입니다.
- 0 < array의 길이 < 100
- -1,000 < array의 원소 < 1,000
입출력 예
array | result |
[1, 2, 7, 10, 11] | 7 |
[9, -1, 0] | 0 |
입출력 예 설명
입출력 예 #1
- 본문과 동일합니다.
입출력 예 #2
- 9, -1, 0을 오름차순 정렬하면 -1, 0, 9이고 가장 중앙에 위치하는 값은 0입니다.
제출 답안
import Foundation
func solution(_ array: [Int]) -> Int {
// 오름차순으로 정렬
let s1 = array.sorted()
// 중앙값의 인덱스 계산
let s2 = s1.count/2
// 중앙값 반환
return s1[s2]
}
3. 최빈값 구하기
최빈값은 주어진 값 중에서 가장 자주 나오는 값을 의미합니다. 정수 배열 array가 매개변수로 주어질 때, 최빈값을 return 하도록 solution 함수를 완성해보세요. 최빈값이 여러 개면 -1을 return 합니다.
제한사항
- 0 < array의 길이 < 100
- 0 ≤ array의 원소 < 1000
입출력 예
array | result |
[1, 2, 3, 3, 3, 4] | 3 |
[1, 1, 2, 2] | -1 |
[1] | 1 |
입출력 예 설명
입출력 예 #1
- [1, 2, 3, 3, 3, 4]에서 1은 1개 2는 1개 3은 3개 4는 1개로 최빈값은 3입니다.
입출력 예 #2
- [1, 1, 2, 2]에서 1은 2개 2는 2개로 최빈값이 1, 2입니다. 최빈값이 여러 개이므로 -1을 return 합니다.
입출력 예 #3
- [1]에는 1만 있으므로 최빈값은 1입니다.
import Foundation
func solution(_ array: [Int]) -> Int {
// 요소 등장 횟수를 계산하기 위한 딕셔너리 선언
var s1: [Int:Int] = [:]
for num in array {
s1[num, default: 0] += 1
}
// 최대 등장 횟수 찾기
let s2 = s1.values.max() ?? 0
// 등장 횟수가 최대값인 숫자 필터링
let s3 = s1.filter { $0.value == s2 }.map { $0.key}
// 최빈값 반환
return s3.count > 1 ? -1 : s3.first ?? -1
}
1. 등장 횟수를 계산
2. 최대 등장 횟수를 찾기
3. 등장 횟수가 최대값인 숫자들을 추출
4. 최빈값이 유일하면 반환하고, 여러 개라면 -1을 반환
4. 짝수는 싫어요
정수 n이 매개변수로 주어질 때, n 이하의 홀수가 오름차순으로 담긴 배열을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ n ≤ 100
입출력 예
n | result |
10 | [1, 3, 5, 7, 9] |
15 | [1, 3, 5, 7, 9, 11, 13, 15] |
입출력 예 설명
입출력 #1
- 10 이하의 홀수가 담긴 배열 [1, 3, 5, 7, 9]를 return합니다.
입출력 #1
- 15 이하의 홀수가 담긴 배열 [1, 3, 5, 7, 9, 11, 13, 15]를 return합니다.
제출 답안
import Foundation
func solution(_ n: Int) -> [Int] {
// 범위를 1부터 n까지 모든 수를 filter로 판별. 배열의 각 요소에 대해 홀수인지 판별
return (1...n).filter { $0 % 2 != 0 }
}
반응형
'프로그래머스 입문문제' 카테고리의 다른 글
[프로그래머스 입문문제] Day 8 배열, 구현, 수학 (0) | 2025.01.21 |
---|---|
[프로그래머스 입문문제] Day 6 문자열, 반복문, 출력, 배열, 조건문 (0) | 2025.01.16 |
[프로그래머스 입문문제] Day 5 수학, 배열 (0) | 2025.01.15 |
[프로그래머스 입문문제] Day 2 사칙연산, 조건문, 배열 (0) | 2025.01.10 |
[프로그래머스 입문문제] Day 1 사칙연산 (0) | 2025.01.09 |