일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 구현
- bit manipulation
- Binary Tree
- database
- Matrix
- Class
- hash table
- Method
- simulation
- dynamic programming
- sorting
- 자바
- 코딩테스트
- Math
- Counting
- 코테
- two pointers
- string
- Stack
- greedy
- implement
- array
- Binary Search
- java
- Data Structure
- geometry
- Tree
- Number Theory
- SQL
- 파이썬
- Today
- Total
목록monotonic stack (3)
코린이의 소소한 공부노트
1. Input 1) int[] nums 2. Output 1) nums가 순환 배열이라고 할 때, i번째 이후의 요소들 중 nums[i]보다 큰 첫 번째 수를 차례대로 담은 배열을 반환 2) 그런 수를 찾지 못했다면 -1을 저장 3. Constraint 1) 1
1. Input 1) int[] nums1 2) int[] nums2 2. Output 1) nums1[i]의 요소를 nums2에서 찾은 다음, 해당 요소의 오른쪽에 있는 nums2의 요소 중 nums1[i]보다 큰 첫 번째 요소를 차례대로 담은 int[] - 만약 nums2에서 nums1[i]보다 큰 요소를 찾지 못했다면 -1을 저장한다. 3. Constraint 4. Example Input: nums1 = [4,1,2], nums2 = [1,3,4,2] -> Output: [-1,3,-1] 설명: - nums1[0]==4 -> nums2[2]==4 -> nums2에서 index>2 인 요소 중 4보다 큰 요소가 없으므로 -1을 저장 - nums1[1]==1 -> nums2[0]==1 -> nums2..
1. Input 1) int 배열 prices - prices[i]에는 i번째 물건의 가격이 담겨있다. 2. Output 1) 아래 규칙대로 할인받았을 때 지불해야 할 금액이 담긴 배열 // 규칙 - i번째 물건을 산다면, price[j]만큼 할인받는다. - 이때 price[j] 가장 작은 인덱스는 3이므로 4-2=2를 지불한다. - 2번째: 가격이 6보다 저렴한 것은 2, 3 -> 인덱스는 3, 4 -> 가장 작은 인덱스는 3이므로 6-2=4를 지불한다. - 3번째: 가격이 2보다 저렴한 것은 없으므로 2를 지불한다. - 4번째: 가격이 3보다 저렴한 것은 없으므로 3를 지불한다. 5. Code 1) 첫 코드(2022/06/16) for(int i=0 ; i