Uknow's Lab.
article thumbnail
[백준 25373번] [Python] 벼락치기
코딩테스트/Python 2022. 11. 18. 13:29

https://www.acmicpc.net/problem/25373 25373번: 벼락치기 부산사이버대학교에 다니는 대희는 강의 영상 보는 것을 매일 미뤘다. 오늘은 중간고사가 일주일 남은 날이다. 대희는 더 이상 미루면 큰일이 날 것 같아서 오늘부터 밀린 영상을 보기로 했다. www.acmicpc.net 난이도 : 브론즈 2 태그 : 수학, 많은 조건 분기 설명 본 문제의 테스트 케이스는 크게 두가지로 나눌 수 있습니다. 1. n 28 7+6+5+4+3+2+1 = 28 보다 크냐 아니냐 입니다. 28이하 작을 때에는 피연산자를 하나씩 늘이면서 1 ~ 7개의 피연산자를 둘 수 있지만, 28보다 클 경우엔 피연산자가 7개로 고정이기 때문입니다. n 1 2~3 -> 2 4~6 -> 3 7~10 -> 4 11..

article thumbnail
[백준 1916번] [Kotlin] 최소비용 구하기
코딩테스트/Kotlin 2022. 11. 16. 09:49

https://www.acmicpc.net/problem/1916 1916번: 최소비용 구하기 첫째 줄에 도시의 개수 N(1 ≤ N ≤ 1,000)이 주어지고 둘째 줄에는 버스의 개수 M(1 ≤ M ≤ 100,000)이 주어진다. 그리고 셋째 줄부터 M+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 www.acmicpc.net 난이도 : 골드 5 태그 : 그래프 이론, 데이크스트라 설명 최단경로 알고리즘 중 하나인 다익스트라 최단경로 알고리즘의 기본격인 문제입니다. 다익스트라(Dijkstra)가 네덜란드인이라, 네덜란드 식 발음을 살려서 읽으면 데이크스트라 정도로 읽어야 하나, 한국의 교재 등에서 다익스트라라는 표기가 더 많이 사용되는 것 같아 본 포스팅에선 '다익스트라'라는 표기를 사..

article thumbnail
[백준 16099번] [Kotlin] Larger Sport Facility
코딩테스트/Kotlin 2022. 11. 16. 09:18

https://www.acmicpc.net/problem/16099 16099번: Larger Sport Facility The input consists of several test cases. The first line contains an integer indicating the number of test cases. Each test case follows. Each test case consists of a single line containing 4 integers 1 ≤ lt, wt, le, we ≤ 109 separated by single spaces www.acmicpc.net 난이도 : 브론즈 5 태그 : 수학, 사칙연산 설명 두 개의 스포츠 시설을 비교하고 더 큰 시설을 출력하는 문..

article thumbnail
[백준 25965번] [Kotlin] 미션 도네이션
코딩테스트/Kotlin 2022. 11. 15. 10:40

https://www.acmicpc.net/problem/25965 25965번: 미션 도네이션 리그오브전설 스트리머 순범이는 트위치 플랫폼으로 시청자를 끌어모으고 있다. 순범이는 '트윕' 음성 도네이션을 통해 시청자들과 소통하고는 한다. 순범이는 트윕에 '미션' 기능이 있다는 것 www.acmicpc.net 난이도 : 브론즈 4 태그 : 수학, 구현, 사칙 연산 설명 각 테스트 케이스 별로 KDA에 맞는 도네 금액을 산출해 출력하는 문제입니다 주의할 점은 금액이 0보다 작다면 합산하지 않는다는 점입니다. 소스코드 import kotlin.math.max fun main() { repeat(readLine()!!.toInt()) { val n = readLine()!!.toInt() val mission..

article thumbnail
[백준 8979번] [C] 올림픽
코딩테스트/C | C++ 2022. 11. 15. 10:16

https://www.acmicpc.net/problem/8979 8979번: 올림픽 입력의 첫 줄은 국가의 수 N(1 ≤ N ≤ 1,000)과 등수를 알고 싶은 국가 K(1 ≤ K ≤ N)가 빈칸을 사이에 두고 주어진다. 각 국가는 1부터 N 사이의 정수로 표현된다. 이후 N개의 각 줄에는 차례대로 각 www.acmicpc.net 난이도 : 실버 5 태그 : 정렬, 구현 설명 금메달 - 은메달 - 동메달 우선순위로 순위를 정해 특정 국가가 몇등인지 출력하는 서브테스크 문제입니다. 서브테스크는 특정 조건을 충족할때마다 배점을 주는 방식인데, 그냥 부분점수가 있다 생각하면 됩니다. 특정 국가의 등수를 구하는 문제이기 때문에, 모든 국가의 등수를 하나하나 구할 필요 없이 특정 국가보다 성적이 높은 나라만 카..

article thumbnail
[백준 9339번] [C] 마라토너
코딩테스트/C | C++ 2022. 11. 15. 10:04

https://www.acmicpc.net/problem/9339 9339번: 마라토너 상근이는 마라톤 학원을 운영하고 있다. 학원의 수강생은 총 K명으로, 다가오는 마라톤 대회에 참가하기 위해 연습을 하고 있다. 마라톤 대회가 끝나고, 기록이 6시간 이하인 경우는 마라톤 완주 www.acmicpc.net 난이도 : 브론즈 1 태그 : 구현 설명 수강생들 중 가장 성적이 좋은 수강생과, 통과한 수강생들의 수를 출력하는 문제입니다. 소스코드 #include int main() { int T; scanf("%d", &T); while (T--) { int studentCnt; // 학생의 수 scanf("%d", &studentCnt); int students[101]; // 학생들의 수 (최대 100명) ..

article thumbnail
[백준 2704번] [C] 이진법 시계
코딩테스트/C | C++ 2022. 11. 15. 09:56

https://www.acmicpc.net/problem/2704 2704번: 이진법 시계 각 테스트 케이스마다, 3열 방식으로 읽은 이진법 시계의 시각과 3행 방식으로 읽은 이진법 시계의 시각을 공백으로 구분하여 출력한다. 각각 18개의 비트를 가져야 한다. www.acmicpc.net 난이도 : 브론즈 2 태그 : 구현 설명 시, 분, 초를 각각 이진법으로 나타내고 가로/세로 기준으로 출력하는 문제입니다. C언어에 2진수 변환 내장 함수가 있을까 하며 찾아보다가, 그냥 포기하고 직접 구현해서 풀었습니다. 소스코드 #include #include void get_bin(int arr[], int n) { int i = 0; while (n > 0) { arr[i] = n % 2; n /= 2; i++;..

article thumbnail
[백준 1202번] [Kotlin] 보석 도둑
코딩테스트/Kotlin 2022. 11. 13. 17:37

https://www.acmicpc.net/problem/1202 1202번: 보석 도둑 첫째 줄에 N과 K가 주어진다. (1 ≤ N, K ≤ 300,000) 다음 N개 줄에는 각 보석의 정보 Mi와 Vi가 주어진다. (0 ≤ Mi, Vi ≤ 1,000,000) 다음 K개 줄에는 가방에 담을 수 있는 최대 무게 Ci가 주어진다. (1 ≤ Ci www.acmicpc.net 난이도 : 골드 2 태그 : 자료 구조, 그리디 알고리즘, 정렬, 우선순위 큐 설명 정렬과 우선순위 큐를 사용해 풀 수 있습니다. 보석의 경우, 무게로 내림차순 정렬하고, 무게가 같을 경우 오름차순 정렬을 합니다. 가방도 무게를 기준으로 오름차순 정렬하고, 각 가방의 무게보다 가볍거나, 같은 보석의 가격을 우선순위 큐(내림차순)에 넣고,..

article thumbnail
[백준 5566번] [Python] 주사위 게임
코딩테스트/Python 2022. 11. 11. 15:30

https://www.acmicpc.net/problem/5566 5566번: 주사위 게임 상근이는 혼자 보드 게임을 하고 있다. 이 보드 게임의 보드는 N칸으로 이루어져 있고, 출발점은 1칸, 도착점은 N칸이다. 각 칸에는 지시 사항이 적혀있다. 지시 사항은 말을 얼만큼 이동해야 하 www.acmicpc.net 난이도 : 브론즈 2 태그 : 구현, 시뮬레이션 설명 주사위를 던지고, 그 칸의 개수만큼 이동하는 문제입니다. 저는 새로 칸을 이동할때마다 그 칸의 개수만큼 또 이동하여 0이 나올때까지 계속 이동하는 건줄 알았는데, 그냥 한 번만 이동하는 것 이였습니다. 소스코드 n, m = map(int, input().split(" ")) map = [] for i in range(0, n): map.app..

article thumbnail
[백준 5211번] [Python] 가단조와 다장조
코딩테스트/Python 2022. 11. 11. 15:27

https://www.acmicpc.net/problem/5211 5211번: 가단조와 다장조 첫째 줄에 음악이 주어진다. 음악은 {"A", "B", "C", "D", "E", "F", "G", "|"}로 이루어져 있으며, 길이는 5보다 크거나 같고, 100을 넘지 않는다. |가 연속해서 등장하거나, 문자열의 양쪽 끝에 나오는 경우 www.acmicpc.net 난이도 : 브론즈1 태그 : 구현, 문자열 설명 음악을 배경으로 한 코딩테스트 문제입니다. "|" 문자를 기준으로 문자열을 분리하고, 분리된 각 문자열의 맨 앞글자를 이용해 가장조와 다장조를 각각 카운팅하면 됩니다. 만약 가단조와 다장조 개수가 같을 경우, 문자열의 맨 끝 문자를 비교하여 판단합니다. 소스코드 line = input().strip(..