마음만은 새내기

항상 초심을 잃지 않고 생활하겠습니다~!

프로그래밍/Baekjoon Online Judge 60

BOJ 2407번(조합) 문제 풀이

★ solved.ac 난이도 : S3 (작성 시점 기준) [문제 본문 링크] 2407번: 조합 n과 m이 주어진다. (5 ≤ n ≤ 100, 5 ≤ m ≤ 100, m ≤ n) www.acmicpc.net 이 문제는 일반적인 조합의 수를 구하는 문제이나, 큰 수 연산이 필요하므로 Python을 사용하였습니다. nCm = n!/(n-m)!/m! = n*(n-1)*(n-2)*...*(n-m+1)/m! (n부터 내림차순으로 m개를 곱한 값에서 m!을 나눠주면 됩니다. 공유 코드에는 하나의 반복문으로 처리하였습니다.) [BOJ에서 코드 보기] 공유 소스 보기 www.acmicpc.net ★ 틀린 점이 있다면 알려주세요~!

BOJ 1463번(1로 만들기) 문제 풀이

★ solved.ac 난이도 : S3 (작성 시점 기준) [문제 본문 링크] 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 이 문제는 일반적인 동적 계획법(DP) 문제입니다. 먼저 크기가 100만 이상인 충분한 정수 배열을 만듭니다. (배열의 이름은 dp로 설정하며, 이 배열에 정답을 계산해 저장합니다.) 입력이 1이면 연산이 필요하지 않으므로 정답은 0입니다. (dp[1] = 0) 2 이상의 입력에 대해서는 문제의 조건에 따라 3가지로 생각할 수 있습니다. 경우 1. x가 3으로 나누어 떨어지는 경우 3으로 나누기 : min(dp[x], dp[x/3]+1)을 계산합니다. (여기에서 +1은 1번의 추가 연산을 의미합니다...

solved.ac 경험치에 관해서...

solved.ac 구간 경험치 계산 식 요즘 BOJ 문제를 풀면서, solved.ac에도 관심(?)을 갖고 있는데요, 제가 호기심에 solved.ac의 레벨, 난이도별 경험치 계산 식과 배수를 구해보았어요~! (약간의 오차가 있을 수 있으니 참고하세요~!) 1. 문제 난이도별 경험치 및 배수 Unrated : 320 Bronze V : 480 (약 1.500배) Bronze IV : 672 (약 1.400배) Bronze III : 954 (약 1.420배) Bronze II : 1,374 (약 1.440배) Bronze I : 1,992 (약 1.450배) Silver V : 2,909 (약 1.460배) Silver IV : 4,276 (약 1.470배) Silver III : 6,329 (약 1.4..

BOJ 2941번(크로아티아 알파벳) 문제 풀이 (Python 3)

★ solved.ac 난이도 : S5 (2021년 12월 29일 기준) 오랜만에 Python으로 BOJ 문제를 풀어보았어요~! (요즘 들어 Python 언어의 인기가 높아지고 있다는 소리도 들었죠...) 오늘은 BOJ 2941번 문제를 Python으로 간단하게 푸는 법을 알려드릴게요~! https://www.acmicpc.net/problem/2941 2941번: 크로아티아 알파벳 문제 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= 예를 들어, ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루..