일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- database
- 코딩테스트
- hash table
- 파이썬
- Class
- Method
- Binary Search
- Counting
- greedy
- java
- geometry
- Number Theory
- Binary Tree
- Math
- SQL
- bit manipulation
- implement
- Stack
- Tree
- sorting
- 자바
- simulation
- 코테
- two pointers
- Matrix
- 구현
- Data Structure
- string
- array
- dynamic programming
- Today
- Total
목록greedy (35)
코린이의 소소한 공부노트
1. Input 1) int[] position - i번 칩은 position[i]에 위치해있다. 2. Output 1) 아래 규칙과 같이 칩을 오른쪽(+) 또는 왼쪽(-)으로 움직일 때, 모든 칩을 한 군데로 옮기는 데 드는 최소 비용을 반환 // i번 칩을 옮기는 데 드는 비용 - +2칸 또는 -2칸 이동: 0 - +1칸 또는 -1칸 이동: 1 3. Constraint 1) 1
거스름돈의 액수가 주어지면 리암이 줘야할 쿼터(Quarter, $0.25)의 개수, 다임(Dime, $0.10)의 개수, 니켈(Nickel, $0.05)의 개수, 페니(Penny, $0.01)의 개수를 구하는 프로그램을 작성하시오. 거스름돈은 항상 $5.00 이하이고, 손님이 받는 동전의 개수를 최소로 하려고 한다. - 입력: 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 거스름돈 C를 나타내는 정수 하나로 이루어져 있다. C의 단위는 센트이다. (1달러 = 100센트) (1
1. Input 1) int[] g - i번째 아이는 g[i] 이상의 크기인 쿠키를 원한다. 2) int[] s - i번째 쿠키의 크기는 s[i]이다. 2. Output 1) 아이들이 원하는대로 쿠키를 나눠줄 때, 만족하는 아이의 최대 수를 반환 3. Constraint 1) 1
1. Input 1) String s 2. Output 1) s의 문자들로 만들 수 있는 palindrome 중 가장 긴 것의 길이를 반환 // palindrome은 앞에서 부터 읽으나 뒤에서 부터 읽으나 같은 문자열을 뜻한다. 3. Constraint 1) 1 Output: 1 (a) 5. Code 1) 첫 코드(2023/02/19) HashMap m = new HashMap(); for(int i=0 ; i
1. Input 1) 문자열 current 2) 문자열 correct - 두 문자열은 24시간제를 기준으로 한 시간을 나타낸다. 2. Output 1) current를 correct로 만드는 최소한의 연산 횟수를 반환 - 한번 연산에 1분, 5분, 15분, 60분 4개 중 1개를 선택해 시간을 증가시킬 수 있다. 3. Constraint 1) current와 correct의 형태는 "HH:MM"이다. 2) HH에는 00~23이, MM에는 00~59가 들어간다. 3) current Output: 3 설명: - 60분을 더한다 -> "03:30" - 60분을 더한다 -> "04:30" - 5분을 더한다 -> "04:35" - 이것보다 더 적은 횟수를 사용하여 2시 30분을 4시 35분으로 바꿀 수 없다. 5..
1. Input 1) 정수를 나타내는 문자열 n 2. Output 1) n을 최소한의 deci-binary의 합으로 나타내려고 할 때 필요한 deci-binary의 수 - deci-binary란 11, 101, 1000과 같이 1과 0으로 이루어진 10진수를 말한다. 3. Constraint 1) 1
1. Input 1) 4자리 자연수 num 2. Output 1) num의 숫자 4개를 나눠서 2개의 숫자를 만들었을 때, 두 수의 합의 최솟값 3. Constraint 1) 1000
1. Input 1) 문자열 num 2. Output 1) num의 여러 substring 중에서 가장 큰 홀수를 나타내는 문자열 반환 3. Constraint 1) 1 Output: "" 설명: - 가능한 substring은 “5”, “2”, “52”인데, 이 중 “5”가 유일한 홀수이므로 “5”를 반환한다. - 가능한 substring은 “4”, “2”, “0”, “6”, “42”, “20”, “06”, “420”, “206”, “4206”인데, 모두 짝수이므로 빈 문자열을 반환한다. 5. Code 1) 첫 코드(2022/08/02) for(int i=num.length()-1 ; i>=0 ; i--){ if((num.charAt(i)-'0')%2==0) num = num.substring(0,i);..
1. Input 1) 정수 배열 nums 2. Output 1) 1회에 nums의 요소 중 1개를 1만큼 증가시키는 연산를 반복해 계속 증가(nums[i]