PS/Baekjoon Online Judge 594

[백준 02579] 계단 오르기 [C/C++]

문제계단 오르기 게임은 계단 아래 시작점부터 계단 꼭대기에 위치한 도착점까지 가는 게임이다. 과 같이 각각의 계단에는 일정한 점수가 쓰여 있는데 계단을 밟으면 그 계단에 쓰여 있는 점수를 얻게 된다.예를 들어 와 같이 시작점에서부터 첫 번째, 두 번째, 네 번째, 여섯 번째 계단을 밟아 도착점에 도달하면 총 점수는 10 + 20 + 25 + 20 = 75점이 된다.계단 오르는 데는 다음과 같은 규칙이 있다.계단은 한 번에 한 계단씩 또는 두 계단씩 오를 수 있다. 즉, 한 계단을 밟으면서 이어서 다음 계단이나, 다음 다음 계단으로 오를 수 있다.연속된 세 개의 계단을 모두 밟아서는 안 된다. 단, 시작점은 계단에 포함되지 않는다.마지막 도착 계단은 반드시 밟아야 한다.따라서 첫 번째 계단을 밟고 이어 두..

[백준 09095] 1, 2, 3 더하기 [C/C++]

문제정수 4를 1, 2, 3의 합으로 나타내는 방법은 총 7가지가 있다. 합을 나타낼 때는 수를 1개 이상 사용해야 한다.1+1+1+11+1+21+2+12+1+12+21+33+1정수 n이 주어졌을 때, n을 1, 2, 3의 합으로 나타내는 방법의 수를 구하는 프로그램을 작성하시오.입력첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 주어진다. n은 양수이며 11보다 작다.출력각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다.풀이T번 동안 1, 2, 3으로 정수 n을 만들기 위한 모든 경우의 수를 구하는 문제다.dp[i] : i를 만들 수 있는 경우의 수n을 구성하기 위해 문제에서 주어진 연산은 1, 2, 3을 합해서 만..

[백준 06162] Superlatives [Python]

문제Typically, droughts are classified into “abnormally dry”, “moderate drought”, “severe drought”, “extreme drought”, and “exceptional drought”. The current drought is so “exceptional” in most of California that there have been discussions of adding one or more steps to the scale. But really, that will only delay the problem. Any system of discrete labels is not completely scalable. As computer s..

[백준 01463] 1로 만들기 [C/C++]

문제 https://www.acmicpc.net/problem/1463풀이N을 1로 만들기 위한 연산을 최소화하는 문제다.dp[i] : i를 만들기 위한 최소 연산 횟수기본적으로 dp[i]는 dp[i - 1]에 1을 더해 만들 수 있다, dp[i] = dp[i - 1] + 1i가 만약 2 또는 3의 배수라면, 1, 2번 연산에 의해 곱셈으로 계산하는게 이득이다.단, 2보다는 3으로 곱셈하는 것이 연산 횟수가 더 최소화되므로 dp 갱신 순서에 유의하자.소스코드보기

[백준 06131] 완전 제곱수 [Python]

문제상근이는 선영이와 함께 게임을 하고 있다. 먼저, 상근이는 두 양의 정수 A와 B를 고른다. (1 ≤ B ≤ A ≤ 500) 그 다음, 선영이는 상근이가 고른 수를 맞춰야 한다.상근이는 선영이에게 다음과 같은 힌트를 주었다.A의 제곱은 B의 제곱보다 N만큼 커 (1 ≤ N ≤ 1,000)위의 힌트 조건을 만족하는 A와 B 쌍의 개수를 구하는 프로그램을 작성하시오.입력첫째 줄에 N이 주어진다.출력상근이의 힌트 조건을 만족하는 (A,B) 쌍의 개수를 출력한다.풀이1 ≤  B ≤ A ≤ 500에 대해 A^2 - B^2 == N인 경우를 세어주자.만약 찾았다면, 이후의 차는 무조건 N보다 크다. 다음 B로 넘어가자. 소스코드보기출처https://www.acmicpc.net/problem/6131

[백준 05988] 홀수일까 짝수일까 [Python]

문제짝이 없는 경재는 매일 홀로 있다보니 홀수를 판별할 수 있는 능력이 생겼다. 창식이는 경재의 말이 사실인지 그 능력을 시험해보려 한다. 창식이의 의심이 끝이 없을 것 같아 N개만 확인하기로 정했다.N개의 정수가 주어지면 홀수인지 짝수인지를 출력하는 프로그램을 만들어 경재의 능력을 검증할 수 있게 도와주자.입력첫 번째 줄에 숫자의 개수 N(1 두 번째 줄부터 N+1번째 줄에 걸쳐 홀수인지 짝수인지 확인할 정수 K (1 출력N개의 줄에 걸쳐 한 줄씩 정수 K가 홀수라면 'odd'를, 짝수라면 'even'을 출력한다.풀이N개의 수를 입력받아 홀짝 여부를 판단하는 문제다.소스코드보기출처https://www.acmicpc.net/problem/5988

[백준 11383] 뚊 [Python]

문제정우는 "뚊"과 "돌돔"을 의미하는 두 이미지를 받았다. 과연 두 그림이 같은지 검사해보자. 즉 N× M 크기의 이미지와 N ×2 M 크기의 이미지가 주어질 때 첫 번째 이미지를 가로로 두 배로 늘이면 두 번째 이미지가 되는지 검사하는 프로그램을 작성하라.입력입력의 첫 번째 줄에 N, M (1 ≤ N, M ≤ 10)이 주어진다. 다음 N개의 줄의 각 줄에는 M개의 문자가 주어진다. 다음 N개의 줄의 각 줄에는 2M개의 문자가 주어진다. 모든 문자는 영문 알파벳 대문자 혹은 소문자이다.출력첫 번째로 주어진 이미지를 가로로 두 배로 늘렸을 때 두 번째 이미지가 된다면 "Eyfa"을 출력하고, 되지 않는다면 "Not Eyfa"을 출력한다.풀이입력받은 문자열 N개의 문자열의 각 문자를 2배로 늘렸을 때 두번..