BOJ-15654 N과 M (5)
https://www.acmicpc.net/problem/15654 문제 소개 자연수 N과 자연수 M, 그리고 N개의 자연수가 주어졌을 때 N개의 자연수 중 M`개를 고른 수열을 모두 구하는 프로그램을 작성한다. 문제 풀이 algorithm 라이브러리의 next_permutation()함수를 이용하여 vector<int>에 입력받은 ...
https://www.acmicpc.net/problem/15654 문제 소개 자연수 N과 자연수 M, 그리고 N개의 자연수가 주어졌을 때 N개의 자연수 중 M`개를 고른 수열을 모두 구하는 프로그램을 작성한다. 문제 풀이 algorithm 라이브러리의 next_permutation()함수를 이용하여 vector<int>에 입력받은 ...
https://www.acmicpc.net/problem/2293 문제 소개 n가지 종류의 동전이 있다. 동전을 적당히 사용해서 그 가치의 합이 k원이 되도록 하는 경우의 수를 구한다. 각각의 동전은 몇 개라도 사용할 수 있다. 문제 풀이 dp를 사용하여 풀이하였다. 리스트 dp의 i번째 원소인 dp[i]는 가치의 합이 i원이 될 수 있는 경...
https://www.acmicpc.net/problem/1806 문제 소개 10000 이하의 자연수로 이루어진 길이 n짜리 수열이 주어진다. 이 수열에서 연속된 수들의 부분합 중에 그 합이 s이상이 되는 것 중, 가장 짧은 것의 길이를 구한다. 문제 풀이 투 포인터로 풀이하였다. 투 포인터는 시작과 끝을 의미하는 두 개의 포인터를 이동시켜가...
https://www.acmicpc.net/problem/10799 문제 소개 여러 개의 쇠막대기를 레이저로 절단할 때 잘려진 쇠막대기 조각의 총 개수를 구한다. 쇠막대기와 레이저의 배치는 아래 조건을 따른다. 쇠막대기는 자신보다 긴 쇠막대기 위에만 놓일 수 있다. - 쇠막대기를 다른 쇠막대기 위에 놓는 경우 완전히 포함되도록 놓...
https://www.acmicpc.net/problem/1700 문제 소개 멀티탭의 콘센트 개수와 전기용품의 사용 순서가 주어졌을 때, 플러그를 빼는 횟수를 최소화하려고 한다. 문제 풀이 전기용품의 사용 순서는 리스트 arr에 저장하였다. arr의 첫 원소부터 해당 전기용품을 사용하기 위한 동작을 수행한다. 가장 먼저 해당 전기용품이 이미 ...
https://www.acmicpc.net/problem/1062 문제 소개 단어의 개수 n과 선생님이 학생들에게 가르칠 글자의 개수 k가 주어진다. 학생들이 읽을 수 있는 단어의 최댓값을 구한다. 모든 단어는 “anta”로 시작하고, “tica”로 끝난다. 문제 풀이 단어를 읽고자 할 때 글자를 배웠는지 여부만 따지면 되므로, 배운 글자와...
https://www.acmicpc.net/problem/14719 문제 소개 2차원 세계에 쌓여있는 블록의 정보가 주어진다. 비가 충분히 왔을 때 고이는 빗물의 총량을 구한다. 문제 풀이 i번째 블록의 높이를 arr[i]라고 해 보자. i번째 블록 위로 고이는 빗물의 양을 알기 위해서는 i의 이전과 이후 구간 각각에서 블록의 높이 최대값이 ...
배경 본 포스팅에는 파이썬에서의 내장 함수를 이용한 진법 변환 방법에 대하여 서술하였다. 10진수 $\rightarrow$ n진수 bin(), oct(), hex() 파이썬의 내장 함수 중 bin()/oct()/hex()는 각각 주어진 정수를 "0b"/"0o"/"0x"로 시작하는 이진수/8진수/16진수 문자열로 변환한다. print(bin(1...
https://www.acmicpc.net/problem/16928 문제 소개 뱀과 사다리 게임은 주사위를 굴려 1번 칸에서 시작하여 100번 칸에 도착하는 게임이다. 주사위를 굴려 이동할 수 있는 거리는 1부터 6까지이며, 이동한 결과 칸에 사다리 또는 뱀이 있다면 각각이 가리키는 칸으로 이동해야 한다. 게임판의 상태가 주어졌을 때 100번 ...
https://www.acmicpc.net/problem/11053 문제 소개 수열이 주어졌을 때 가장 긴 증가하는 부분 수열의 길이를 구한다. 문제 풀이 dp로 풀이하였다. n은 입력받을 수열의 길이이며 arr은 수열이다. 리스트 dp는 딕셔너리를 n개 가지며, dp[n]은 arr[0] 부터 arr[i]까지 확인했을 때 만들 수 있는 수열...