μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
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 |
- java
- νλ‘κ·Έλλ¨Έμ€
- Python
- μ΄μ½ν
- json-server
- μκ³ λ¦¬μ¦
- Algorithm
- μλ°
- 리μ‘νΈ
- redux-toolkit
- axios
- JavaScript
- react
- react-redux
- μ½λ©ν μ€νΈν©κ²©μλκΈ°
- 맀μΌλ©μΌ
- useDispatch
- ν μ½ν μ½
- νν΄νλ¬μ€
- sw expert academy
- react-router
- redux
- C++
- redux-saga
- SW
- maeil-mail
- νν΄99
- createSlice
- Get
- programmers
- Today
- Total
Binary Journey
[ν μ½ν μ½1.5 1-05] λ²μ€ λ³Έλ¬Έ
[ν μ½ν μ½1.5 1-05] λ²μ€
binaryJournalist 2025. 1. 12. 18:15π‘ν μ½ν μ½ μμ¦ 1.5 1ν λͺ¨μ off-site λ¬Έμ νμ΄μ λλ€. (2025.01.12)
λ¬Έμ
μΆμ²: νλ‘κ·Έλλ¨Έμ€ - PCCE κΈ°μΆλ¬Έμ 07. λ²μ€
λ΄μ©
μμ§μ΄λ μ½μμ₯μμ κ°κΈ° μν΄ λ²μ€λ₯Ό νλ €κ³ ν©λλ€. λ²μ€μλ μ’μμ΄ μ΄ seat
κ°λ§νΌ μμ΅λλ€. μμ§μ΄λ λ²μ€ μ’μμ μμμ κ° μ μμμ§ κΆκΈν΄ν©λλ€. κΈ°μ μμ μΆλ°ν λ²μ€κ° μμ§μ΄κ° κΈ°λ€λ¦¬λ μ κ±°μ₯μ λμ°©νκΈ° μ μ λ°©λ¬Ένλ κ° μ κ±°μ₯μμ μΉ/νμ°¨ν μΉκ° μ λ³΄κ° μ£Όμ΄μ§ λ, μμ§μ΄κ° λ²μ€μ ν μκ° λΉ μ’μμ λͺ κ°μΈμ§ ꡬν΄μ£ΌμΈμ. μμ§μ΄κ° κΈ°λ€λ¦¬λ μ κ±°μ₯μμλ μμ§μ΄κ° μ μΌ λ¨Όμ λ²μ€μ νμΉνλ©°, μ΄μ μ κ±°μ₯μμ λ²μ€μ νμΉν μΉκ°λ€μ λ¨λ μ’μμ΄ μλ€λ©΄ νμ μλλ€κ³ κ°μ ν©λλ€. λ, κΈ°μ μμ μΆλ°νλ λ²μ€μλ μΉκ°μ΄ 0λͺ
νκ³ μμ΅λλ€.
μλ₯Ό λ€μ΄ λ€μμ μ’μμ΄ 5κ°μΈ λ²μ€μ κ° μ κ±°μ₯μμ μΉ/νμ°¨ν μΉκ° μ 보λ₯Ό λνλ λλ€. μμ§μ΄λ 4λ² μ κ±°μ₯μμ κΈ°λ€λ¦¬κ³ μμΌλ©°, "On"μ μΉμ°¨ν μΉκ°, "Off"λ νμ°¨ν μΉκ°μ μλ―Έν©λλ€.
- 1λ² μ κ±°μ₯ : ["On", "On", "On"] (3λͺ
μΉμ°¨, 0λͺ
νμ°¨)
- 2λ² μ κ±°μ₯ : ["Off", "On", "-"] (1λͺ
μΉμ°¨, 1λͺ
νμ°¨)
- 3λ² μ κ±°μ₯ : ["Off", "-", "-"] (0λͺ
μΉμ°¨, 1λͺ
νμ°¨)
μμ κ°μ κ²½μ°, 1λ² μ κ±°μ₯μμ 3λͺ μ΄ μΉμ°¨νκ³ , 2λ² μ κ±°μ₯μμ 1λͺ μΉμ°¨ 1λͺ νμ°¨, 3λ² μ κ±°μ₯μμ 1λͺ μ΄ νμ°¨νμΌλ―λ‘ 4λ² μ κ±°μ₯μ λμ°©ν λ²μ€μλ 2λͺ μ΄ νκ³ μμ΅λλ€. 4λ² μ κ±°μ₯μμλ μμ§μ΄κ° κ°μ₯ λ¨Όμ νμΉνλ―λ‘, λ¨μμλ μ’μ μλ 3κ°μ λλ€.
μ£Όμ΄μ§ solutionν¨μλ λ²μ€μ μ’μ κ°μ seat
, κΈ°μ μμ μΆλ°ν λ²μ€κ° μμλλ‘ λ°©λ¬Έν μ κ±°μ₯μμ μΉκ°μ΄ μΉ/νμ°¨ν μ 보λ₯Ό λ΄μ 2μ°¨μ λ¬Έμμ΄ λ¦¬μ€νΈ passengers
κ° μ£Όμ΄μ§ λ, λ²μ€μ λ¨μμλ μ’μμ κ°μλ₯Ό return νλ ν¨μμ
λλ€. solution ν¨μκ° μ¬λ°λ₯΄κ² μλνλλ‘ λΉμΉΈμ μ±μ solutionν¨μλ₯Ό μμ±ν΄ μ£ΌμΈμ.
- javaλ₯Ό μμνλ κ²½μ° λ¦¬μ€νΈλ λ°°μ΄, ν¨μλ λ©μλμ λμΌν μλ―Έμ΄λ νμ΄μ μ°Έκ³ ν΄μ£ΌμΈμ.
- ex) solution ν¨μκ° μ¬λ°λ₯΄κ² μλνλλ‘ ν μ€μ μμ ν΄ μ£ΌμΈμ. => solution λ©μλκ° μ¬λ°λ₯΄κ² μλνλλ‘ ν μ€μ μμ ν΄ μ£ΌμΈμ.
μ μ½ μ‘°κ±΄
- 1 ≤
seat
≤ 30 - 1 ≤
passengers
μ κΈΈμ΄ ≤ 10 - 1 ≤
passengers[i]
μ κΈΈμ΄ ≤ 20passengers[0]
μ 1λ² μ κ±°μ₯,passengers[1]
μ 2λ² μ κ±°μ₯, …passengers[i]
λ i + 1λ² μ κ±°μ₯μ μ 보μ λλ€.passengers
μ κΈΈμ΄κ° nμ΄λΌλ©΄, μμ§μ΄λ n + 1λ² μ κ±°μ₯μμ κΈ°λ€λ¦¬κ³ μμ΅λλ€.
passengers[i]
μ κΈΈμ΄λ λͺ¨λ λμΌν©λλ€.passengers[i]
μ μμλ "On", "Off" λλ "-"μ λλ€.- "-"λ λ°°μ΄μ κ°λ‘(μ΄) κΈΈμ΄λ₯Ό λ§μΆκΈ° μν μμλ‘, μλ¬΄λ° μλ―Έλ μμ΅λλ€.
- "-"κ° "On", "Off" μ¬μ΄μ μλ κ²½μ°λ μμ΅λλ€.
κΈ°λ‘νκΈ°
π‘ μ΄λκΉμ§ μκ°ν΄λ΄€λμ§ λ¨κ³μ μΌλ‘ κΈ°λ‘ν΄λ΄ λλ€.
μ΄λ€ μκ³ λ¦¬μ¦μ μ μ©νλ € νλμ?
μ€νμ μ¬μ©νκ³ μΆλ€. (λ§λ¬Όμ€νμ€ γ γ ) κ·Έλ¬λ λ¬Έμ λ μ«μ μ°μ°μΌλ‘ λ¨Όμ νμ΄λμ΄ μλ€.
μ μ© κ·Όκ±°λ 무μμΈκ°μ?
μμ μκ΄μμ΄ λ²μ€ μΉνμ°¨ μΈμμ λ°λΌ λ¨μ λ²μ€ μ’μμ ꡬνλ©΄ λλ―λ‘ μ€ν μ¬μ©ν΄λ λ κ² κ°μλ€.
νμ§λ§ μ«μ μ°μ°μΌλ‘ λ¨Όμ νμ΄λμ΄ μμΌλ λ¬Έμ μ λ§μΆ° νμ΄ν΄λ³΄κ³ μ€νμΌλ‘λ κ°λ₯νλ©΄ μ€νμΌλ‘ λ³νλ ν΄λ³΄κ² λ€.
νμ΄
νμ΄ μκ°
μμ μκ° | μ’ λ£ μκ° | μ΄ μμ μκ° |
---|---|---|
12:53 | 13:06 | 13λΆ |
λ¬Έμ λΆμ
μ λ ₯κ° λΆμ
π‘ μ λ ₯κ°μ λΆμνλ©΄ λ¬Έμ μμ μꡬνλ μκ³ λ¦¬μ¦μ μκ° λ³΅μ‘λλ₯Ό κ°μ μ μΌλ‘ νμ ν μ μμ΅λλ€.
seat | passengers | result |
---|---|---|
5 | [["On", "On", "On"], ["Off", "On", "-"], ["Off", "-", "-"]] | 3 |
10 | [["On", "On", "On", "On", "On", "On", "On", "On", "-", "-"], ["On", "On", "Off", "Off", "Off", "On", "On", "-", "-", "-"], ["On", "On", "On", "Off", "On", "On", "On", "Off", "Off", "Off"], ["On", "On", "Off", "-", "-", "-", "-", "-", "-", "-"]] | 0 |
μ μΆλ ₯ μ #1
- μ§λ¬Έκ³Ό λμΌν©λλ€
μ μΆλ ₯ μ #2
μλμ κ°μ΄ μΉκ°μ΄ νκ³ λ΄λ Έκ³ λ§μ§λ§μΌλ‘ 12λͺ μ΄ λ²μ€μ νκ³ μμΌλ―λ‘ λ¨μ μ’μμ 0κ°μ λλ€.
- 1λ² μ κ±°μ₯ : ["On", "On", "On", "On", "On", "On", "On", "On", "-", "-"] (8λͺ
μΉμ°¨, 0λͺ
νμ°¨)
- 2λ² μ κ±°μ₯ : ["On", "On", "Off", "Off", "Off", "On", "On", "-", "-", "-"] (4λͺ
μΉμ°¨, 3λͺ
νμ°¨)
- 3λ² μ κ±°μ₯ : ["On", "On", "On", "Off", "On", "On", "On", "Off", "Off", "Off"] (6λͺ
μΉμ°¨, 4λͺ
νμ°¨)
- 4λ² μ κ±°μ₯ : ["On", "On", "Off", "-", "-", "-", "-", "-", "-", "-"] (2λͺ
μΉμ°¨, 1λͺ
νμ°¨)
μμ¬ μ½λ μμ±
π‘ μμ¬ μ½λλ λμ μ€μ¬μΌλ‘ μμ±νλ κ²μ΄ μ€μν©λλ€.
π‘ μμ¬ μ½λλ λ¬Έμ ν΄κ²° μμλ‘ μμ±ν©λλ€.
π‘ μμ¬ μ½λλ₯Ό μΆ©λΆν ν μ€νΈν΄λ΄ λλ€.
(κΈ°μ‘΄ μ½λλ μ΄λ κ² κ΅¬νλμ΄ μμλ€.)
class Solution {
public int solution(int seat, String[][] passengers) {
int num_passenger = 0;
for(int i=0; i<passengers.length; i++){
num_passenger += func;
num_passenger -= func;
}
int answer = func;
return answer;
}
public int func1(int num){
if(0 > num){
return 0;
}
else{
return num;
}
}
public int func2(int num){
if(num > 0){
return 0;
}
else{
return num;
}
}
public int func3(String[] station){
int num = 0;
for(int i=0; i<station.length; i++){
if(station[i].equals("Off")){
num += 1;
}
}
return num;
}
public int func4(String[] station){
int num = 0;
for(int i=0; i<station.length; i++){
if(station[i].equals("On")){
num += 1;
}
}
return num;
}
}
ꡬν
class Solution {
public int solution(int seat, String[][] passengers) {
int num_passenger = 0;
for(int i=0; i<passengers.length; i++){
num_passenger += func4(passengers[i]);
num_passenger -= func3(passengers[i]);
}
int answer = func1(seat - num_passenger);
return answer;
}
public int func1(int num){
if(0 > num){
return 0;
}
else{
return num;
}
}
public int func2(int num){
if(num > 0){
return 0;
}
else{
return num;
}
}
public int func3(String[] station){
int num = 0;
for(int i=0; i<station.length; i++){
if(station[i].equals("Off")){
num += 1;
}
}
return num;
}
public int func4(String[] station){
int num = 0;
for(int i=0; i<station.length; i++){
if(station[i].equals("On")){
num += 1;
}
}
return num;
}
}
public static int solution(int seat, String[][] passengers) {
Stack<String> stack = new Stack<>();
for (String[] passenger : passengers) {
for (String p : passenger) {
if (p.equals("On")) {
stack.push(p);
} else if (p.equals("Off") && !stack.isEmpty()) {
stack.pop();
}
}
}
return Math.max(0, seat - stack.size());
}
볡기νκΈ°
λ΅μκ³Ό λμ νμ΄λ₯Ό λΉκ΅ν΄λ³΄μΈμ
- κ·Όλ° λν΄λ μκ°λ³΅μ‘λλ O(N^2)λΌ λ©λͺ¨λ¦¬ ν¨μ¨ μκ°νλ©΄ μ«μ μ°μ° λ°©μμΌλ‘ νλ κ² λμμ§λ..
'Algorithm > ν μ½ν μ½1.5(2025.01)' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
[ν μ½ν μ½1.5 1-07] μ§ν μ κΈ° (0) | 2025.01.12 |
---|---|
[ν μ½ν μ½1.5 1-06] λλ€μ κ·μΉ (0) | 2025.01.12 |
[ν μ½ν μ½1.5 1-04] μ λλκΈ° (0) | 2025.01.12 |
[ν μ½ν μ½1.5 1-03] κ°λ ν©μΉκΈ° (0) | 2025.01.12 |
[ν μ½ν μ½1.5 1-01] λμμ μ¬μκΈ° (0) | 2025.01.12 |