Solutions
알고리즘 문제 풀이
BOJ 1437 - 수 분해
자연수를 합이 N인 양의 정수들로 분해할 때 곱의 최댓값을 구하는 그리디 문제
BOJ 1323 - 숫자 연결하기
숫자 N을 반복 연결하여 K로 나누어떨어지는 최소 횟수를 나머지 연산으로 구하는 문제
BOJ 1672 - DNA 해독
DNA 문자열을 뒤에서부터 두 글자씩 결합 규칙에 따라 축소하여 최종 문자를 구하는 문제
BOJ 1673 - 치킨 쿠폰
치킨 쿠폰을 모아 추가 치킨을 교환하는 과정을 시뮬레이션하는 문제
BOJ 1507 - 궁금한 민호
플로이드-워셜 역추적으로 최단 경로를 만족하는 최소 간선 집합을 구하는 문제
BOJ 1593 - 문자 해독
슬라이딩 윈도우와 문자 빈도 배열 비교로 애너그램 부분 문자열 개수를 구하는 문제
BOJ 1368 - 물대기
가상 노드를 추가하여 우물 비용과 수로 비용을 통합한 최소 스패닝 트리 문제
BOJ 2875 - 대회 or 인턴
여학생 2명 남학생 1명으로 팀을 구성할 때 인턴 인원을 고려한 최대 팀 수를 구하는 문제
BOJ 2741 - N 찍기
행렬 거듭제곱을 이용하여 피보나치 수를 빠르게 구하는 문제
BOJ 1669 - 멍멍이 쓰다듬기
키 차이를 최소 일수로 줄이기 위한 수학적 규칙을 찾는 문제
BOJ 1668 - 트로피 진열
왼쪽과 오른쪽에서 각각 보이는 트로피의 개수를 구하는 구현 문제
BOJ 1633 - 최고의 팀 만들기
흑백 각 15명씩 선택하여 능력치 합을 최대화하는 DP 문제
BOJ 1486 - 등산
높이 차이 제한과 시간 제한 내에서 도달 가능한 가장 높은 지점을 데이크스트라로 탐색하는 문제
BOJ 1563 - 개근상
지각과 결석 조건을 만족하는 출석 경우의 수를 DP로 구하는 문제
BOJ 1484 - 다이어트
현재 몸무게의 제곱과 기억하는 몸무게의 제곱 차이가 G인 수를 두 포인터로 구하는 문제
BOJ 2891 - 카약과 강풍
카약이 부서진 팀에게 인접 팀의 여분 카약을 빌려주는 그리디 문제
BOJ 1493 - 박스 채우기
큰 큐브부터 그리디하게 채워서 박스를 가득 채우는 최소 큐브 수를 구하는 문제
BOJ 16926 - 배열 돌리기 1
2차원 배열을 바깥 테두리부터 반시계 방향으로 R번 회전시키는 문제
BOJ 2846 - 오르막길
연속으로 증가하는 구간 중 가장 큰 높이 차이를 구하는 문제
BOJ 12755 - 수면 장애
1부터 이어 쓴 숫자열에서 N번째 숫자를 구하는 문제
BOJ 1942 - 디지털시계
시간 범위 내에서 시분초를 이어 붙인 수가 3의 배수인 경우를 세는 문제
BOJ 1515 - 수 이어 쓰기
1부터 수를 이어 쓴 문자열에서 지워진 후 남은 문자열을 복원하는 문제
BOJ 1639 - 행운의 티켓
앞뒤 절반의 자릿수 합이 같은 가장 긴 부분 문자열을 구하는 문제
BOJ 1522 - 문자열 교환
슬라이딩 윈도우로 'a'를 모두 연속시키기 위한 최소 교환 횟수를 구하는 문제
BOJ 1660 - 캡틴 이다솜
사면체 수를 이용한 최소 분할 개수를 DP로 구하는 문제
BOJ 1527 - 금민수의 개수
4와 7로만 이루어진 금민수를 재귀적으로 생성하여 범위 내 개수를 구하는 문제
BOJ 1407 - 2로 몇 번 나누어질까
A부터 B까지 각 수를 2로 나눌 수 있는 최대 횟수의 합을 수학적으로 구하는 문제
BOJ 1487 - 물건 팔기
모든 가격 후보에 대해 순이익을 계산하여 최대 이익을 구하는 문제
BOJ 1513 - 경로 찾기
오락실을 순서대로 방문하며 (1,1)에서 (N,M)까지 가는 경로 수를 DP로 구하는 문제
BOJ 1418 - K-세준수
K 이하의 소인수만 가진 수의 개수를 에라토스테네스의 체로 구하는 문제