본문 바로가기

반응형

백준

(329)
[BOJ] 백준 2587 대표값2 (Swift) 문제 https://www.acmicpc.net/problem/2587 2587번: 대표값2 어떤 수들이 있을 때, 그 수들을 대표하는 값으로 가장 흔하게 쓰이는 것은 평균이다. 평균은 주어진 모든 수의 합을 수의 개수로 나눈 것이다. 예를 들어 10, 40, 30, 60, 30의 평균은 (10 + 40 + 30 + 60 + www.acmicpc.net 풀이 평균은 입력받은 수들의 합 / 5 입니다. 중앙값은 입력받은 수를 정렬 한 후, 2번 인덱스가 중앙값 입니다. 이것을 출력만 해주면 되는 문제입니다. 소스코드 후기 고차함수 reduce를 사용해 배열의 합을 구할 수 있습니다. 중앙값을 구하기 위해서는 자연수가 총 5개이므로 배열에 넣어주고 정렬해준 후, 2번 인덱스에 있는 요소를 출력하면 됩니다.
[BOJ] 백준 2750 수 정렬하기 (Swift) 문제 https://www.acmicpc.net/problem/2750 2750번: 수 정렬하기 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 풀이 Array에 내장된 sort 혹은 sorted 메서드를 사용해 풀 수 있는 문제입니다. 소스코드 후기 직접 정렬을 구현하는 방법도 있겠지만, 내장함수를 쓰면 쉽게 풀 수 있는 문제입니다.
[BOJ] 백준 24313 알고리즘 수업 - 점근적 표기 1 (Swift) 문제 https://www.acmicpc.net/problem/24313 24313번: 알고리즘 수업 - 점근적 표기 1 f(n) = 7n + 7, g(n) = n, c = 8, n0 = 1이다. f(1) = 14, c × g(1) = 8이므로 O(n) 정의를 만족하지 못한다. www.acmicpc.net 풀이 조건을 잘 확인해보고, 예제 입력을 보면 $O(n)$을 만족시키는 조건을 찾을 수 있습니다. 첫 번재 줄에서, $a_1 * n + a_0$ 가 $f(n)$ 입니다. 두 번째 줄에서, $c$ 세 번째 줄에서 $n_0$를 입력 받고, $c * n$ 이 $g(n)$ 입니다. 그렇다면, $a_1 * n + a_0 \le c * n$에서 $n_0$를 대입해서 확인해보면 되겠죠? 하지만, 한가지 조건이 더 ..
[BOJ] 백준 24267 알고리즘 수업 - 알고리즘의 수행 시간 6 (Swift) 문제 https://www.acmicpc.net/problem/24267 24267번: 알고리즘 수업 - 알고리즘의 수행 시간 6 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 풀이 문제의 알고리즘은 n에 영향을 받아, 중첩된 for문이 약 $n^3$번 실행됩니다. 빅오 표기법으로 $O(n^3)$ 입니다. 수행 횟수는 어떻게 될까요? 7을 예시로 들어보겠습니다. 첫 번째 for문은 1, 2, 3, 4, 5 까지 실행이 되겠네요. 첫 번째 for문이 1일 때, 두 번째 for문은 2, 3, 4, 5, 6 까지 실행이 됩니다. ..
[BOJ] 백준 24266 알고리즘 수업 - 알고리즘의 수행 시간 5 (Swift) 문제 https://www.acmicpc.net/problem/24266 24266번: 알고리즘 수업 - 알고리즘의 수행 시간 5 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 풀이 문제의 알고리즘은 n에 따라서, 중첩된 for문이 $n^3$번 실행되므로, 빅오 표기법으로 $O(n^3)$ 입니다. 따라서 수행횟수는 $n^3$번, 최고차항의 차수는 3 입니다. ($n^3$) 소스코드 후기 시간 복잡도를 계산하는 방법에 대해 안다면 쉽게 풀 수 있는 문제입니다.
[BOJ] 백준 24265 알고리즘 수업 - 알고리즘의 수행 시간 4 (Swift) 문제 https://www.acmicpc.net/problem/24265 24265번: 알고리즘 수업 - 알고리즘의 수행 시간 4 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 풀이 문제의 알고리즘은 n에 영향을 받아, 중첩된 for문이 약 $n^2$번 실행됩니다. 빅오 표기법으로 $O(n^2)$ 입니다. 수행횟수는 어떻게 될까요? 7을 예시로 들어보겠습니다. 첫 번째 for문에서는 1, 2, 3, 4, 5, 6 까지 실행되겠네요. 두 번째 for문에서는 첫 번째 for문이 1일 때, 6번 실행 (2, 3, 4, 5, 6, ..
[BOJ] 백준 24264 알고리즘 수업 - 알고리즘의 수행 시간 3 (Swift) 문제 https://www.acmicpc.net/problem/24264 24264번: 알고리즘 수업 - 알고리즘의 수행 시간 3 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 풀이 문제의 알고리즘은 n에 따라서, 중첩된 for문이 $n^2$번 실행되므로, 빅오 표기법으로 $O(n^2)$ 입니다. 따라서 수행횟수는 $n^2$번, 최고차항의 차수는 2 입니다. ($n^2$) 소스코드 후기 시간복잡도를 계산하는 방법에 대해 안다면 쉽게 풀 수 있는 문제입니다.
[BOJ] 백준 24263 알고리즘 수업 - 알고리즘의 수행 시간 2 (Swift) 문제 https://www.acmicpc.net/problem/24263 24263번: 알고리즘 수업 - 알고리즘의 수행 시간 2 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시 www.acmicpc.net 풀이 문제의 알고리즘은 n에 따라서 for문이 n번 실행되므로, 빅오 표기법으로 $O(n)$ 입니다. 따라서 수행횟수는 n번, 최고차항의 차수는 1 입니다. ($n^1$) 소스코드 후기 시간복잡도를 계산하는 방법에 대해 안다면 쉽게 풀 수 있는 문제입니다.

반응형