μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
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 |
- 리μ‘νΈ
- ν μ½ν μ½
- μλ°
- redux-toolkit
- SW
- μκ³ λ¦¬μ¦
- react-redux
- Python
- Get
- Algorithm
- java
- νν΄99
- maeil-mail
- νν΄νλ¬μ€
- json-server
- νλ‘κ·Έλλ¨Έμ€
- C++
- JavaScript
- sw expert academy
- 맀μΌλ©μΌ
- axios
- redux
- μ΄μ½ν
- createSlice
- react
- programmers
- useDispatch
- μ½λ©ν μ€νΈν©κ²©μλκΈ°
- react-router
- redux-saga
- Today
- Total
Binary Journey
[ν μ½ν μ½1.5 1-12] λ°μ΄ν° λΆμ λ³Έλ¬Έ
[ν μ½ν μ½1.5 1-12] λ°μ΄ν° λΆμ
binaryJournalist 2025. 1. 14. 16:05π‘ν μ½ν μ½ μμ¦ 1.5 1ν λͺ¨μ on-site λ¬Έμ νμ΄μ λλ€. (2025.01.12)
λ¬Έμ
μΆμ²: νλ‘κ·Έλλ¨Έμ€ - PCCE κΈ°μΆλ¬Έμ 10. λ°μ΄ν° λΆμ
λ΄μ©
AI μμ§λμ΄μΈ νμμ΄λ λ°μ΄ν°λ₯Ό λΆμνλ μμ μ μ§ννκ³ μμ΅λλ€. λ°μ΄ν°λ ["μ½λ λ²νΈ(code)", "μ μ‘°μΌ(date)", "μ΅λ μλ(maximum)", "νμ¬ μλ(remain)"]μΌλ‘ ꡬμ±λμ΄ μμΌλ©° νμμ΄λ μ΄ λ°μ΄ν°λ€ μ€ μ‘°κ±΄μ λ§μ‘±νλ λ°μ΄ν°λ§ λ½μμ μ λ ¬νλ € ν©λλ€.
μλ₯Ό λ€μ΄ λ€μκ³Ό κ°μ΄ λ°μ΄ν°κ° μ£Όμ΄μ§λ€λ©΄
data = [[1, 20300104, 100, 80], [2, 20300804, 847, 37], [3, 20300401, 10, 8]]
μ΄ λ°μ΄ν°λ λ€μ νμ²λΌ λνλΌ μ μμ΅λλ€.
code | date | maximum | remain |
---|---|---|---|
1 | 20300104 | 100 | 80 |
2 | 20300804 | 847 | 37 |
3 | 20300401 | 10 | 8 |
μ£Όμ΄μ§ λ°μ΄ν° μ€ "μ μ‘°μΌμ΄ 20300501 μ΄μ μΈ λ¬Όκ±΄λ€μ νμ¬ μλμ΄ μ μ μμ"λ‘ μ λ ¬ν΄μΌ νλ€λ©΄ 쑰건μ λ§κ² κ°κ³΅λ λ°μ΄ν°λ λ€μκ³Ό κ°μ΅λλ€.
data = [[3,20300401,10,8],[1,20300104,100,80]]
μ λ ¬ν λ°μ΄ν°λ€μ΄ λ΄κΈ΄ μ΄μ°¨μ μ μ 리μ€νΈ data
μ μ΄λ€ μ 보λ₯Ό κΈ°μ€μΌλ‘ λ°μ΄ν°λ₯Ό λ½μλΌμ§λ₯Ό μλ―Ένλ λ¬Έμμ΄ ext
, λ½μλΌ μ 보μ κΈ°μ€κ°μ λνλ΄λ μ μ val_ext
, μ 보λ₯Ό μ λ ¬ν κΈ°μ€μ΄ λλ λ¬Έμμ΄ sort_by
κ° μ£Όμ΄μ§λλ€.
data
μμ ext
κ°μ΄ val_ext
λ³΄λ€ μμ λ°μ΄ν°λ§ λ½μ ν, sort_by
μ ν΄λΉνλ κ°μ κΈ°μ€μΌλ‘ μ€λ¦μ°¨μμΌλ‘ μ λ ¬νμ¬ return νλλ‘ solution ν¨μλ₯Ό μμ±ν΄ μ£ΌμΈμ. λ¨, 쑰건μ λ§μ‘±νλ λ°μ΄ν°λ νμ ν κ° μ΄μ μ‘΄μ¬ν©λλ€.
κΈ°λ‘νκΈ°
π‘ μ΄λκΉμ§ μκ°ν΄λ΄€λμ§ λ¨κ³μ μΌλ‘ κΈ°λ‘ν΄λ΄ λλ€.
νμ΄
νμ΄ μκ°
μμ μκ° | μ’ λ£ μκ° | μ΄ μμ μκ° |
---|---|---|
11:24 | 11:40 | 16λΆ |
λ¬Έμ λΆμ
μ μ½ μ¬ν νμ & ν μ€νΈ μΌμ΄μ€ μμ±
- 1 ≤
data
μ κΈΈμ΄ ≤ 500data[i]
μ μμλ [μ½λ λ²νΈ(code), μ μ‘°μΌ(date), μ΅λ μλ(maximum), νμ¬ μλ(remain)] ννμ λλ€.- 1 ≤ μ½λ λ²νΈ≤ 100,000
- 20000101 ≤ μ μ‘°μΌ≤ 29991231
data[i][1]
μ yyyymmdd ννμ κ°μ κ°μ§λ©°, μ¬λ°λ₯Έ λ μ§λ§ μ£Όμ΄μ§λλ€. (yyyy : μ°λ, mm : μ, dd : μΌ)- 1 ≤ μ΅λ μλ≤ 10,000
- 1 ≤ νμ¬ μλ≤ μ΅λ μλ
ext
μsort_by
μ κ°μ λ€μ μ€ ν κ°μ§λ₯Ό κ°μ§λλ€.- "code", "date", "maximum", "remain"
- μμλλ‘ μ½λ λ²νΈ, μ μ‘°μΌ, μ΅λ μλ, νμ¬ μλμ μλ―Έν©λλ€.
val_ext
λext
μ λ°λΌ μ¬λ°λ₯Έ λ²μμ μ«μλ‘ μ£Όμ΄μ§λλ€.- μ λ ¬ κΈ°μ€μ ν΄λΉνλ κ°μ΄ μλ‘ κ°μ κ²½μ°λ μμ΅λλ€.
μ λ ₯κ° λΆμ
π‘ μ λ ₯κ°μ λΆμνλ©΄ λ¬Έμ μμ μꡬνλ μκ³ λ¦¬μ¦μ μκ° λ³΅μ‘λλ₯Ό κ°μ μ μΌλ‘ νμ ν μ μμ΅λλ€.
data | ext | val_ext | sort_by | result |
---|---|---|---|---|
[[1, 20300104, 100, 80], [2, 20300804, 847, 37], [3, 20300401, 10, 8]] | "date" | 20300501 | "remain" | [[3,20300401,10,8],[1,20300104,100,80]] |
μμ¬ μ½λ μμ±
π‘ μμ¬ μ½λλ λμ μ€μ¬μΌλ‘ μμ±νλ κ²μ΄ μ€μν©λλ€.
π‘ μμ¬ μ½λλ λ¬Έμ ν΄κ²° μμλ‘ μμ±ν©λλ€.
π‘ μμ¬ μ½λλ₯Ό μΆ©λΆν ν μ€νΈν΄λ΄ λλ€.
solution(int[][] data, String ext, int val_ext, String sort_by) {
// hashMap μμ±
// code:0, date:1, maximum:2, remain:3
int filterIndex = map.get(ext);
int sortByIndex = map.get(sort_by);
// `data`μμ `ext` κ°μ΄ `val_ext`λ³΄λ€ μμ λ°μ΄ν°λ§ λ½μ ν, `sort_by`μ ν΄λΉνλ κ°μ κΈ°μ€μΌλ‘ μ€λ¦μ°¨μμΌλ‘ μ λ ¬
return Arrays.stream(data)
.filter(d -> d[filterIndex] < val_ext)
.sorted(sortByIndex λ‘ μ€λ¦μ°¨μ);
}
ꡬν
import java.util.HashMap;
import java.util.Arrays;
class Solution {
public int[][] solution(int[][] data, String ext, int val_ext, String sort_by) {
// hashMap μμ±
HashMap<String, Integer> columns = new HashMap<>();
// code:0, date:1, maximum:2, remain:3
columns.put("code", 0);
columns.put("date", 1);
columns.put("maximum", 2);
columns.put("remain", 3);
int filterIndex = columns.get(ext);
int sortByIndex = columns.get(sort_by);
// `data`μμ `ext` κ°μ΄ `val_ext`λ³΄λ€ μμ λ°μ΄ν°λ§ λ½μ ν, `sort_by`μ ν΄λΉνλ κ°μ κΈ°μ€μΌλ‘ μ€λ¦μ°¨μμΌλ‘ μ λ ¬
return Arrays.stream(data)
.filter(d -> d[filterIndex] < val_ext)
.sorted((d1, d2) -> Integer.compare(d1[sortByIndex], d2[sortByIndex]))
.toArray(int[][]::new);
}
}
filter()
APIλ O(N)μ μκ°λ³΅μ‘λλ₯Ό κ°μ§λ€.sort()
APIλ O(NlogN)μ μκ°λ³΅μ‘λλ₯Ό κ°μ§λ€.
import java.util.HashMap;
import java.util.Arrays;
import java.util.Comparator;
class Solution {
public int[][] solution(int[][] data, String ext, int val_ext, String sort_by) {
// hashMap μμ±
HashMap<String, Integer> columns = new HashMap<>();
// code:0, date:1, maximum:2, remain:3
columns.put("code", 0);
columns.put("date", 1);
columns.put("maximum", 2);
columns.put("remain", 3);
int filterIndex = columns.get(ext);
int sortByIndex = columns.get(sort_by);
// `data`μμ `ext` κ°μ΄ `val_ext`λ³΄λ€ μμ λ°μ΄ν°λ§ λ½μ ν, `sort_by`μ ν΄λΉνλ κ°μ κΈ°μ€μΌλ‘ μ€λ¦μ°¨μμΌλ‘ μ λ ¬
return Arrays.stream(data)
.filter(d -> d[filterIndex] < val_ext)
.sorted(Comparator.comparingInt(arr -> arr[sortByIndex]))
.toArray(int[][]::new);
}
}
볡기νκΈ°
- Arrays sort, List sort 리뷰 ν¬μΈνΈ μμ보기
'Algorithm > ν μ½ν μ½1.5(2025.01)' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[ν μ½ν μ½1.5 1-11] μ΄μν μΉΈ (0) | 2025.01.14 |
---|---|
[ν μ½ν μ½1.5 1-10] κ°μ₯ λ§μ΄ λ°μ μ λ¬Ό (0) | 2025.01.14 |
[ν μ½ν μ½1.5 1-09] λΆλ κ°κΈ° (0) | 2025.01.14 |
[ν μ½ν μ½1.5 1-08] 곡μ (0) | 2025.01.14 |
[ν μ½ν μ½1.5 1-07] μ§ν μ κΈ° (0) | 2025.01.12 |