본문 바로가기

코딩테스트_백준풀이54

포도주 시식 #2156 c++ 풀이 https://www.acmicpc.net/problem/2156 2156번: 포도주 시식 효주는 포도주 시식회에 갔다. 그 곳에 갔더니, 테이블 위에 다양한 포도주가 들어있는 포도주 잔이 일렬로 놓여 있었다. 효주는 포도주 시식을 하려고 하는데, 여기에는 다음과 같은 두 가지 규 www.acmicpc.net 계단 오르기 문제와 매우매우 유사하나, 마지막 계단을 밟지 않아도 되고 꼭 계단을 두칸씩 밟을 필요도 없는 계단오르기라고 생각하면 될 것 같다. #include using namespace std; int n; int arr[10001]; int dp[10001]; int main() { cin >> n; for (int i = 1; i > arr[i]; } //dp[0] = 0; dp[1] = a.. 2023. 11. 15.
요세푸스 문제 #1158 c++ 풀이 https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net 보자마자 queue를 이용해야겠다고 생각이 들었던 문제 넣고 2번 빼고 뺄때마다 다시 넣고 뽑고 출력하고를 반복하면 풀린다. #include #include #include using namespace std; int main() { int n, k; cin >> n >> k; queue q; for (int i = 1; i 2023. 11. 10.
2Xn 타일링 #11726 c++ 풀이 https://www.acmicpc.net/problem/11726 11726번: 2×n 타일링 2×n 크기의 직사각형을 1×2, 2×1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2×5 크기의 직사각형을 채운 한 가지 방법의 예이다. www.acmicpc.net n=1 일때 경우의 수 1 n=2 일때 경우의 수 2 n=3 일때 경우의 수 3 n=4 일때 경우의 수 5 여기서 피보나치같은 느낌이어서 그렇게 풀었다. #include using namespace std; int n; int dp[10001]; int main() { cin >> n; dp[0] = 0; dp[1] = 1; dp[2] = 2; for (int i = 3; i 2023. 11. 10.
BABBA #9625 c++ 풀이 https://www.acmicpc.net/problem/9625 9625번: BABBA 상근이는 길을 걷다가 신기한 기계를 발견했다. 기계는 매우 매우 큰 화면과 버튼 하나로 이루어져 있다. 기계를 발견했을 때, 화면에는 A만 표시되어져 있었다. 버튼을 누르니 글자가 B로 변했 www.acmicpc.net 차분히 먼저 적어보았다. dp문제는 규칙을 찾는게 중요하다. iter수 -> 모양 A개수 B개수를 써봤다. 0-> A 1 0 1-> B 0 1 2-> BA 1 1 3-> BAB 1 2 4-> BABBA 2 3 여기서 점화식이 보였다. 5-> BABBABAB 3 5 6-> BABBABABBABBA 5 8 그결과 dp[i][1] = dp[i - 1][0] + dp[i - 1][1]; dp[i][0] = .. 2023. 11. 10.