목록CodingTest (430)
기록방
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Povhz/btrSxkGEkBc/ogbIZ2khzqBw4BGKvSvJx1/img.png)
👉 문제링크 2520번: 팬케이크 사랑 첫 번째 테스트 케이스에서 주어진 재료를 가지고 바나나 팬케익 10개, 딸기 팬케익 1개, 초콜릿 팬케익 4개, 호두 팬케익 1개를 만들 수 있다. 두 번째 테스트 케이스에서 주어진 재료 중 밀 www.acmicpc.net 🔸 문제 분석 🔸 반죽 재료로 만들 수 있는 반죽의 최대값을 구하고, 토핑 재료로 만들 수 있는 케잌의 최대값을 구해 비교해서 더 작은값을 출력한다. 반죽의 재료는 일부만 넣은 배율값으로도 가능하므로 float형으로 계산한다.(힌트2번) 🔸 코드 🔸 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.S..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bBus3O/btrSySvStqQ/US52MwVfrde3rwpH8OZ3a1/img.png)
👉 문제링크 2057번: 팩토리얼 분해 음 아닌 정수 N이 주어졌을 때, 이 수를 서로 다른 정수 M(M ≥ 1)개의 팩토리얼의 합으로 나타낼 수 있는지 알아내는 프로그램을 작성하시오. 예를 들어 2=0!+1!로 나타낼 수 있지만, 5는 이와 같은 www.acmicpc.net 🔸 문제 분석 🔸 팩토리얼의 조합으로 n을 만들 수 있는지 판단한다. n보다 작은 팩토리얼을 큰 수부터 n을 빼며 0을 만들 수 있는지 확인한다(그리디) 🔸 코드 🔸 fact = [0] * 20 fact[0] = 1 for i in range(1, 20): fact[i] = fact[i-1] * i n = int(input()) if n == 0: print("NO") else: for i in range(19, -1, -1): i..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/Bje7p/btrSw5vXhEj/QHUd3DXPpGKivYugNKZrvK/img.png)
👉 문제링크 2999번: 비밀 이메일 정인이는 원래 "bombonisuuladici"를 보내려고 했다. 이 메시지는 16글자이므로, 정인이는 1*16, 2*8, 4*4 행렬을 선택할 수 있다. R이 가장 큰 것은 4*4이므로, 4*4를 선택한다. 정인이가 만든 행렬은 다음과 www.acmicpc.net 🔸 문제 분석 🔸 문자열을 입력받으면 행렬이 가능한 정사각형에 가깝고, 행의 개수가 열의 개수보다 작거나 같은 형태로 변환한다. 행렬에 왼쪽 열부터 세로 방향으로 쓰고, 첫 행부터 가로 방향으로 읽어 출력한다. 🔸 코드 🔸 s = input() r = 0 c = 0 for i in range(1, len(s)//2 + 1): if len(s) % i == 0 and i
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ztEg0/btrSyihhVlK/Jlx8m7uhmNqSefMpKAmeJ1/img.png)
👉 문제링크 2909번: 캔디 구매 오늘은 화이트데이이다. 상근이는 여자친구를 위해서 사탕을 사려고 한다. 하지만, 상근이는 독특한 성격을 가지고 있어서, 특정 액면가의 지폐만 가지고 있는다. 또, 거스름돈은 받지 않는다. www.acmicpc.net 🔸 문제 분석 🔸 숫자 c와 k가 입력되면, c의 k자리에서 반올림한 값을 출력한다. 🔸 코드 🔸 c, k = map(int,input().split()) print(int(round(c + 0.1, -k))) 🔸 코드 해석 🔸 round 함수로 정수 반올림을 위해서 k를 음수로 지정해야한다. python의 round함수는 일반적으로 아는 4사5입이 아닌 5사5입이다. 정확히는 앞 자리가 홀수면 올림, 짝수면 버림을 수행한다. 이 문제에서는 0.1만 더해줘..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bJSUgo/btrSr6s814p/cHQcVjQtWtMUnb9rcZyf70/img.png)
👉 문제링크 2193번: 이친수 0과 1로만 이루어진 수를 이진수라 한다. 이러한 이진수 중 특별한 성질을 갖는 것들이 있는데, 이들을 이친수(pinary number)라 한다. 이친수는 다음의 성질을 만족한다. 이친수는 0으로 시작하지 않 www.acmicpc.net 🔸 문제 분석 🔸 자리수 n을 입력받고 만들 수 있는 이친수의 개수를 출력한다. 이친수는 이진수에서 맨 앞에 1이오고, 11처럼 1 두 개가 붙어서 나오는 경우가 없는 수를 말한다. 1부터 경우의 수를 따져보면 다음과 같다. /* n count pinary number 1 1 1 2 1 10 3 2 101 100 4 3 1000 1001 1010 5 5 10000 10001 10010 10100 10101 6 8 100000 100001 ..