전체 글 21

백준 21314번 민겸 수 풀이 및 정답(python)

[백준 21314번 민겸 수] 문제 설명 및 풀이정해진 규칙대로 최댓값과 최솟값을 구해줘야합니다. 저의 경우 조금 더 계산하기 편한 최솟값부터 구했습니다. 최솟값을 구해보자1. M과 K가 만났을 경우=> M과 K를 각각 분리해줍니다. 합치면서 계산하면 큰 숫자가 됩니다.앞에 M이 몇개든 결합하지 않고 K는 무조건 5로 출력합니다.2. M끼리는 결합해주자=> MM을 따로따로 11로 계산할수도 있지만 결합해주면 10으로 오히려 작은 숫자가 되기 때문에 결합해줍니다. 최댓값을 구해보자1. M과 K를 결합해줍니다.=> M과 K가 만나면 큰 숫자가 됩니다. MK = 50, MMK = 500등등. m의 개수를 파악해두고 K가 나온다면 결합해주는것이 좋습니다.2. K가 안나오면?=> K를 만나지 못한 m들은 각각 따..

CodingTest/Content 2025.03.30

백준 1541번 잃어버린 괄호 풀이 및 정답(python)

문제 설명 및 풀이주어진 식에서 적절히 괄호를 쳐서 가장 작은 값을 찾아야 합니다.가장 작은 값을 찾기위해서는 마이너스를 기준으로다음 마이너스가 나올때 까지 값을 하나로 묶어주면 됩니다. 예시) 15-30+40 -> 15-(30+40)정답 예시 코드import sysinput = sys.stdin.readlinegiven_str = input()# 마이너스 기준으로 splitsplit_str = given_str.split("-")min_number = 0idx = 0for str in split_str: a = 0 for x in str.split("+"): a += int(x) if idx == 0: min_number += a else: m..

CodingTest/Content 2025.03.25

백준 20300번 서강근육맨 풀이 및 정답(python)

문제 설명 및 풀이한번에 2개의 기구씩 쓸 수 있으며 각 기구의 근손실 정도가 주어집니다.근손실 수치의 2개의 기구를 이용하는 경우 2개의 합,1개의 기구를 이용하는 경우 해당 기구의 근손실 정도입니다.최소 근손실 수치가 목적이기 때문에 짝수개의 기구가 주어지는 경우,홀수개의 기구가 주어지는 경우를 구분합니다. => 오름차순으로 기구를 정렬합니다.=> 가장 작은값과 가장 큰 값을 더해 가장 크게 나오는 수를 찾습니다.=> 홀수면 기구가 하나 남기에 가장 큰 값 하나를 max로 먼저 잡고 시작합니다.정답 예시 코드import sysinput = sys.stdin.readlinen = int(input())loss_list = list(map(int, input().split()))# 기계가 홀수개인지 체크..

CodingTest/Content 2025.03.24

백준 11508번 2+1 세일 풀이 및 정답(python)

문제 설명 및 풀이2개를 사면 1개를 공짜로 주기 때문에가장 비싼 것부터 정렬하면 가장 이득을 볼 수 있습니다. => 내림차순으로 정렬=> 3번째 아이템마다 가격계산 안하고 점프정답 예시 코드import sysinput = sys.stdin.readlinen = int(input())price_list = [int(input()) for _ in range(n)]price_list.sort(reverse=True)total_price = 0count = 0for price in price_list: count += 1 if count % 3 == 0: count = 0 continue total_price += priceprint(total_price)

CodingTest/Content 2025.03.24

백준 14916번 거스름돈 풀이 및 정답(python)

문제 설명주어진 금액을 5원과 2원짜리 동전을 가지고최소의 동전으로 거슬러 주는 문제입니다. 풀이5원을 가장 많이 쓰는 방향을 찾아야합니다.주어지는 수를 5원으로 나눈 뒤 2원으로 나눠지는 값이 있는지 찾습니다. 예를 들어 21원인 경우5원으로 4개, 2원으로 나눌 수 없음5원으로 3개, 2원로 거슬러 줄 수 있음 정답 예시 코드givenMoney = int(input())maxValue = givenMoney // 5fiveCoin = maxValuewhile fiveCoin >= 0: remain = givenMoney - (fiveCoin * 5) if (remain % 2) == 0: print(fiveCoin + (remain // 2)) break fi..

CodingTest/Content 2025.03.23

백준 2798번 블랙잭 풀이 및 정답(python)

문제 설명 및 풀이주어진 카드 뭉치 중 3장을 찾고 목표하는 숫자보다 작거나 같으면서 최대한 큰 조합을 찾는 문제입니다. 모든 경우의 수를 다 찾아봐야하기 때문에 가장 쉽게는 3중 for문으로 풀 수 있습니다.파이썬의 경우 내장함수인 combinations를 통해 3장의 조합을 찾을 수 있습니다.정답 예시 코드from itertools import combinations# 입력n, m = map(int, input().split())card_list = list(map(int, input().split()))# 3장 중 m 보다 작으면서 가장 큰 조합 찾기sum_value = 0for three_card in combinations(card_list, 3): if sum(three_card)

CodingTest/Content 2025.02.08

백준 2309번 일곱난쟁이 풀이 및 정답(python)

7명의 난쟁이 합이 100이 되는 경우를 찾고 하나씩 출력하는 문제이며,7중 for문을 쓰면 귀찮은 방법이 되기 때문에 두 가지 방법을 제시할 수 있습니다. 1. 2명 합만 찾는 법-> 9명의 난쟁이 합을 구한다.-> 2명을 제외 시켜 나머지 7명 합이 100되는 경우를 찾는다.-> 해당되는 7명을 정렬하여 한명씩 출력한다. 2. 내장함수 combinations를 통한 방법-> combinations를 통해 7명 합이 100이 되는 경우를 찾는다-> 해당되는 7명을 정렬하여 한명씩 출력한다.  from itertools import combinations#입력heights = [int(input()) for _ in range(9)]# 7명 합이 100인 경우 찾고 하나씩 출력for seven_h in ..

CodingTest/Content 2025.02.08

백준 2331번 분해합 풀이 및 정답(python)

O(n) 풀이해당 문제는 단순히 1부터 n까지 분해합을 찾으면서 답을 구해도 되는 문제입니다.이렇게 하면 O(n)의 시간복잡도를 가지고 풀 수 있습니다.하지만 막상 다른 사람들 제출한 시간을 보면 차이가 꽤 있을겁니다. O(n) 풀이 + 분해합 특성 이용하지만 분해합의 특성을 이용해서 시간을 줄일 수 있습니다.분해합의 특성은 특정 자연수 n의 분해합은 n + (n의 자리수 * 9)까지라는 점입니다.쉽게 999를 예시로 보면999의 분해합은 999 + 9 + 9 + 9 라는 것이고이 특성을 활용해서 분해합을 찾을 때 범위를 좁혀시작할 수 있습니다. Python 정답코드n = int(input())answer = 0start_value = max(1, n - (len(str(n)) * 9))for i in ..

CodingTest/Content 2025.02.05

특수대학원 경쟁률 알아보는 법(서강대, 성균관대 빅데이터학과)

안녕하세요 오늘은 특수대학원 경쟁률 알아보는 법에 대해서 알아보려고 합니다.서강대, 성균관대 빅데이터학과 경쟁률에 대해서 확인해보겠습니다. 먼저 대학알리미 사이트에 접속해서 원하는 학교명을 검색합니다.스크롤을 내리다보면 관련 특수대학원을 찾아볼 수 있습니다. 서강대학교의 경우 AI, SW 대학원으로 명칭이 변경되었지만 2025년부터 적용되기 때문에 2024년 까지는 정보통신대학원으로 찾아봐야 정보가 나옵니다. 특수대학원인 서강대학교 정보통신대학원을 클릭해줍니다.서강대의 경우 정확히 어떤 전공인지를 보여주지 않고 정보통신대학원의 경쟁률을 보여주고 있으며, 약 3대 1의 경쟁률을 보여주고 있습니다. 아무래도 평일 위주로 수업을 진행하다보니 인기학과임에도 약간은 낮은 경쟁률을 보여주지 않나 싶습니다.이번에는 ..

대학원 2025.01.16

서강대학교 소프트웨어공학 특수대학원 최종 합격 후기 - 개발자 특수대학원 진학기 마지막 편

특수대학원에 관심이 있으신 분들은 앞서 쓴 글들도 참고해주시면 도움이 될 것 같습니다. 직장인 야간대학원 고민 - 개발자 특수대학원 진학기 1특수대학원 멘토? 전공, 대학원 선택 - 개발자 특수대학원 진학기 2특수대학원 서류 준비 및 합격 - 개발자 특수대학원 진학기 3특수대학원 면접 및 합격 후기 - 개발자 특수대학원 진학기 4서강대학교 소프트웨어공학 특수대학원 최종 합격 후기 - 개발자 특수대학원 진학기 마지막 편(현재글)서강대학교 소프트웨어공학 특수대학원 최종 합격 후기서강대 특수대학원에 최종 합격했습니다. 사실 대학원의 생각조차 없던 제가 아무리 특수대학원이라고 해도 대학원을 다닐 생각을 한다는게 신기할 따름입니다. 아쉬움이 남을바엔 "지원이나 해볼까" 하는 생각에 소프트웨어, 빅데이터 전공 진학..

대학원 2024.12.25