목록수학 (75)
기록방
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/beAjDR/btrSXq7C4uf/kZCiCKbDHToz6EXnKd4cKk/img.png)
👉 문제링크 1002번: 터렛 각 테스트 케이스마다 류재명이 있을 수 있는 위치의 수를 출력한다. 만약 류재명이 있을 수 있는 위치의 개수가 무한대일 경우에는 -1을 출력한다. www.acmicpc.net 🔸 문제 분석 🔸 두 원의 좌표와 반지름을 입력받고 원의 접점의 수를 출력한다. 0 : 접점이 없음 1 : 내접 혹은 외접으로 1개의 접점 2 : 2개의 접점 -1 : 접점이 무한(일치하는 두 원) 🔸 코드 🔸 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static void..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/JZ31V/btrSW7kC1MX/x8qCFdZSMblhRzxGgc9Pa1/img.png)
👉 문제링크 24389번: 2의 보수 컴퓨터는 뺄셈을 처리할 때 내부적으로 2의 보수를 사용한다. 어떤 수의 2의 보수는 해당하는 숫자의 모든 비트를 반전시킨 뒤, 1을 더해 만들 수 있다. 이때, 32비트 기준으로 처음 표현했던 수와 www.acmicpc.net 🔸 문제 분석 🔸 주어진 수를 2진수로 바꾼 값과 그 값을 2의 보수로 바꾼 값의 0과 1의 차이의 개수를 출력한다. 🔸 코드 🔸 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] arr1 = new int[32]; int[]..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ehaiBq/btrSWwx3Cxm/v3xtljXGwGgeDedfod9TK0/img.png)
👉 문제링크 3595번: 맥주 냉장고 맥주를 좋아하는 창영이는 냉장고에 맥주를 보관한다. 일반 냉장고에 음식과 맥주를 함께 보관하다보니 창영이의 냉장고에는 맥주를 넣을 곳이 점점 없어지고 있었다. 창영이는 맥주 전용 냉장 www.acmicpc.net 🔸 문제 분석 🔸 가로, 세로, 높이 세 수를 곱해서 n을 만들 때 가장 작은 겉넓이를 출력한다. 🔸 코드 🔸 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); long min = 987654321; int[] arr = new int[3]; for ..
![](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..