Repository: DEEPDIVE-coding-potatoes/Algorithm
Pull request #62: Test: 2025-03-26 프로그래머스 Lv.1 
Author: login: gaeunchoi
Created: 2025-03-26T06:55:44Z | Merged: 2025-03-26T07:50:54Z

## 📆 공부 일자

> 20250326

## 📝 공부 내용

> 1. 최소직사각형 -> 완전탐색
2. 두개 뽑아서 더하기 -> py는 itertools.combinations 사용, js는 이중포문 사용
3. 숫자 문자열과 영단어 -> 정규식으로 replace 노가다
4. 달리기 경주 

### 스크린샷 (선택)
![image](https://github.com/user-attachments/assets/d7c843ad-4eb7-4b62-95e9-4488cdd25444)
![image](https://github.com/user-attachments/assets/8a09b04d-08ee-4b69-bd06-0d8d2fcbfaab)

## 💬 리뷰 요구사항(선택)
내일이면 알고리즘 스터디 끝이에요 ... 😭


Diff:
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274/README.md" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274/README.md"
new file mode 100644
index 0000000..d6b66e6
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274/README.md"	
@@ -0,0 +1,42 @@
+# [프로그래머스 Lv.1] 달리기 경주
+
+### 성능 요약
+
+- py  
+  메모리 | 9.15MB  
+  시간 | 0.00ms
+
+- js  
+  메모리 | 33.6MB  
+  시간 | 0.09ms
+
+### 분류
+
+프로그래머스 연습문제 Lv.1
+
+### 제출 일자
+
+2025-03-26 15:45:46
+
+### 문제 설명
+
+얀에서는 매년 달리기 경주가 열립니다. 해설진들은 선수들이 자기 바로 앞의 선수를 추월할 때 추월한 선수의 이름을 부릅니다. 예를 들어 1등부터 3등까지 "mumu", "soe", "poe" 선수들이 순서대로 달리고 있을 때, 해설진이 "soe"선수를 불렀다면 2등인 "soe" 선수가 1등인 "mumu" 선수를 추월했다는 것입니다. 즉 "soe" 선수가 1등, "mumu" 선수가 2등으로 바뀝니다.
+
+선수들의 이름이 1등부터 현재 등수 순서대로 담긴 문자열 배열 players와 해설진이 부른 이름을 담은 문자열 배열 callings가 매개변수로 주어질 때, 경주가 끝났을 때 선수들의 이름을 1등부터 등수 순서대로 배열에 담아 return 하는 solution 함수를 완성해주세요.
+
+### 제한 사항
+
+- 5 ≤ players의 길이 ≤ 50,000
+  - players[i]는 i번째 선수의 이름을 의미합니다.
+  - players의 원소들은 알파벳 소문자로만 이루어져 있습니다.
+  - players에는 중복된 값이 들어가 있지 않습니다.
+  - 3 ≤ players[i]의 길이 ≤ 10
+- 2 ≤ callings의 길이 ≤ 1,000,000
+  - callings는 players의 원소들로만 이루어져 있습니다.
+  - 경주 진행중 1등인 선수의 이름은 불리지 않습니다.
+
+### 입출력 예
+
+| players                               | callings                       | result                                |
+| ------------------------------------- | ------------------------------ | ------------------------------------- |
+| ["mumu", "soe", "poe", "kai", "mine"] | ["kai", "kai", "mine", "mine"] | ["mumu", "kai", "mine", "soe", "poe"] |
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274.js" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274.js"
new file mode 100644
index 0000000..cb0687e
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274.js"	
@@ -0,0 +1,13 @@
+function solution(players, callings) {
+  // 등수 따로 기록
+  let rank = Object.fromEntries(players.map((name, rank) => [name, rank]));
+  callings.forEach(name => {
+    let idx = rank[name];
+    
+    rank[name]--;
+    rank[players[idx-1]]++;
+    [players[idx-1], players[idx]] = [players[idx], players[idx-1]];
+  })
+
+  return players;
+}
\ No newline at end of file
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274.py" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274.py"
new file mode 100644
index 0000000..392d599
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274/\353\213\254\353\246\254\352\270\260 \352\262\275\354\243\274.py"	
@@ -0,0 +1,12 @@
+def solution(players, callings):
+    answer = []
+    ranks = {name: rank for rank, name in enumerate(players)}
+    for call in callings:
+        idx = ranks[call]
+
+        ranks[call] -= 1
+        ranks[players[idx-1]] += 1
+
+        players[idx-1], players[idx] = players[idx], players[idx-1]
+
+    return players
\ No newline at end of file
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260/README.md" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260/README.md"
new file mode 100644
index 0000000..9852861
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260/README.md"	
@@ -0,0 +1,35 @@
+# [프로그래머스 Lv.1] 두 개 뽑아서 더하기
+
+### 성능 요약
+
+- py  
+  메모리 | 9.18MB  
+  시간 | 0.01ms
+
+- js  
+  메모리 | 33.2MB  
+  시간 | 0.06ms
+
+### 분류
+
+프로그래머스 연습문제 Lv.1
+
+### 제출 일자
+
+2025-03-26 15:12:11
+
+### 문제 설명
+
+정수 배열 numbers가 주어집니다. numbers에서 서로 다른 인덱스에 있는 두 개의 수를 뽑아 더해서 만들 수 있는 모든 수를 배열에 오름차순으로 담아 return 하도록 solution 함수를 완성해주세요.
+
+### 제한 사항
+
+- numbers의 길이는 2 이상 100 이하입니다.
+  - numbers의 모든 수는 0 이상 100 이하입니다.
+
+### 입출력 예
+
+| numbers     | result        |
+| ----------- | ------------- |
+| [2,1,3,4,1] | [2,3,4,5,6,7] |
+| [5,0,2,7]   | [2,5,7,9,12]  |
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260.js" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260.js"
new file mode 100644
index 0000000..f6bf810
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260.js"	
@@ -0,0 +1,9 @@
+function solution(numbers) {
+  let result = new Set();
+  for(let i = 0 ; i < numbers.length ; i++){
+    for(let j = i+1 ; j < numbers.length ; j++){
+      result.add(numbers[i] + numbers[j]);
+    }
+  }
+  return Array.from(result).sort((a, b) => a-b);
+}
\ No newline at end of file
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260.py" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260.py"
new file mode 100644
index 0000000..56ed7e4
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260/\353\221\220 \352\260\234 \353\275\221\354\225\204\354\204\234 \353\215\224\355\225\230\352\270\260.py"	
@@ -0,0 +1,6 @@
+from itertools import combinations
+def solution(numbers):
+    answer = set()
+    for i in list(combinations(numbers,2)):
+        answer.add(sum(i))
+    return sorted(answer)
\ No newline at end of file
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264/README.md" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264/README.md"
new file mode 100644
index 0000000..a262b99
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264/README.md"	
@@ -0,0 +1,61 @@
+# [프로그래머스 Lv.1] 숫자 문자열과 영단어
+
+### 성능 요약
+
+- py  
+  메모리 | 9.24MB  
+  시간 | 0.02ms
+
+- js  
+  메모리 | 33.5MB  
+  시간 | 0.04ms
+
+### 분류
+
+프로그래머스 연습문제 Lv.1
+
+### 제출 일자
+
+2025-03-26 15:22:45
+
+### 문제 설명
+
+네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다.
+
+다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다.
+
+- 1478 → "one4seveneight"
+- 234567 → "23four5six7"
+- 10203 → "1zerotwozero3"
+
+이렇게 숫자의 일부 자릿수가 영단어로 바뀌어졌거나, 혹은 바뀌지 않고 그대로인 문자열 s가 매개변수로 주어집니다. s가 의미하는 원래 숫자를 return 하도록 solution 함수를 완성해주세요.
+
+참고로 각 숫자에 대응되는 영단어는 다음 표와 같습니다.
+
+| 숫자 | 영단어 |
+| ---- | ------ |
+| 0    | zero   |
+| 1    | one    |
+| 2    | two    |
+| 3    | three  |
+| 4    | four   |
+| 5    | five   |
+| 6    | six    |
+| 7    | seven  |
+| 8    | eight  |
+| 9    | nine   |
+
+### 제한 사항
+
+- 1 ≤ s의 길이 ≤ 50
+- s가 "zero" 또는 "0"으로 시작하는 경우는 주어지지 않습니다.
+- return 값이 1 이상 2,000,000,000 이하의 정수가 되는 올바른 입력만 s로 주어집니다.
+
+### 입출력 예
+
+| s                  | result |
+| ------------------ | ------ |
+| "one4seveneight"   | 1478   |
+| "23four5six7"      | 234567 |
+| "2three45sixseven" | 234567 |
+| "123"              | 123    |
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264.js" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264.js"
new file mode 100644
index 0000000..5db3fb7
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264.js"	
@@ -0,0 +1,13 @@
+function solution(s) {
+  s = s.replace(/zero/gi, 0)
+  .replace(/one/gi, 1)
+  .replace(/two/gi, 2)
+  .replace(/three/gi, 3)
+  .replace(/four/gi, 4)
+  .replace(/five/gi, 5)
+  .replace(/six/gi, 6)
+  .replace(/seven/gi, 7)
+  .replace(/eight/gi, 8)
+  .replace(/nine/gi, 9)
+  return +s;
+}
\ No newline at end of file
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264.py" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264.py"
new file mode 100644
index 0000000..6d52516
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264/\354\210\253\354\236\220 \353\254\270\354\236\220\354\227\264\352\263\274 \354\230\201\353\213\250\354\226\264.py"	
@@ -0,0 +1,15 @@
+def solution(s):
+    result = ''
+    tmp = ''
+    convertNum = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
+    for i in range(len(s)):
+        char = s[i]
+        if(char.isdigit()):
+            result += char
+        else:
+            tmp += char
+            if tmp in convertNum:
+                result += str(convertNum.index(tmp))
+                tmp = ''
+    
+    return int(result)
\ No newline at end of file
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225/READMD.md" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225/READMD.md"
new file mode 100644
index 0000000..ac52079
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225/READMD.md"	
@@ -0,0 +1,52 @@
+# [프로그래머스 알고리즘 고득점Kit] 최소직사각형
+
+### 성능 요약
+
+- py  
+  메모리 | 10.3MB  
+  시간 | 2.86ms
+
+- js  
+  메모리 | 33.5MB  
+  시간 | 0.08ms
+
+### 분류
+
+완전탐색
+
+### 제출 일자
+
+2025-03-26 15:05:49
+
+### 문제 설명
+
+명함 지갑을 만드는 회사에서 지갑의 크기를 정하려고 합니다. 다양한 모양과 크기의 명함들을 모두 수납할 수 있으면서, 작아서 들고 다니기 편한 지갑을 만들어야 합니다. 이러한 요건을 만족하는 지갑을 만들기 위해 디자인팀은 모든 명함의 가로 길이와 세로 길이를 조사했습니다.
+
+아래 표는 4가지 명함의 가로 길이와 세로 길이를 나타냅니다.
+
+| 명함 번호 | 가로 길이 | 세로 길이 |
+| --------- | --------- | --------- |
+| 1         | 60        | 50        |
+| 2         | 30        | 70        |
+| 3         | 60        | 30        |
+| 4         | 80        | 40        |
+
+가장 긴 가로 길이와 세로 길이가 각각 80, 70이기 때문에 80(가로) x 70(세로) 크기의 지갑을 만들면 모든 명함들을 수납할 수 있습니다. 하지만 2번 명함을 가로로 눕혀 수납한다면 80(가로) x 50(세로) 크기의 지갑으로 모든 명함들을 수납할 수 있습니다. 이때의 지갑 크기는 4000(=80 x 50)입니다.
+
+모든 명함의 가로 길이와 세로 길이를 나타내는 2차원 배열 sizes가 매개변수로 주어집니다. 모든 명함을 수납할 수 있는 가장 작은 지갑을 만들 때, 지갑의 크기를 return 하도록 solution 함수를 완성해주세요
+
+### 제한 사항
+
+- sizes의 길이는 1 이상 10,000 이하입니다.
+  - sizes의 원소는 [w, h] 형식입니다.
+  - w는 명함의 가로 길이를 나타냅니다.
+  - h는 명함의 세로 길이를 나타냅니다.
+  - w와 h는 1 이상 1,000 이하인 자연수입니다.
+
+### 입출력 예
+
+| sizes                                         | result |
+| --------------------------------------------- | ------ |
+| [[60, 50], [30, 70], [60, 30], [80, 40]]      | 4000   |
+| [[10, 7], [12, 3], [8, 15], [14, 7], [5, 15]] | 120    |
+| [[14, 4], [19, 6], [6, 16], [18, 7], [7, 11]] | 133    |
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225.js" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225.js"
new file mode 100644
index 0000000..35708aa
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225.js"	
@@ -0,0 +1,10 @@
+function solution(sizes) {
+  const reSizes = sizes.map(([garo, sero]) => garo < sero ? [sero, garo] : [garo, sero]);
+
+  let [w, h] = [0, 0];
+  reSizes.forEach(([garo, sero]) => {
+    if(garo > w) w = garo;
+    if(sero > h) h = sero;
+  })
+  return w*h;
+}
\ No newline at end of file
diff --git "a/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225.py" "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225.py"
new file mode 100644
index 0000000..bdb5885
--- /dev/null
+++ "b/\354\265\234\352\260\200\354\235\200/\355\224\204\353\241\234\352\267\270\353\236\230\353\250\270\354\212\244 Lv. 1/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225/\354\265\234\354\206\214\354\247\201\354\202\254\352\260\201\355\230\225.py"	
@@ -0,0 +1,8 @@
+# 가로, 세로 길이를 나눠서 보지말고 긴쪽 짧은쪽으로만 정리
+def solution(sizes):
+  w, h = 0, 0
+  for v1, v2 in sizes:
+    short, long = min(v1, v2), max(v1, v2)
+    w, h = max(w, short), max(h, long)
+
+  return w*h
\ No newline at end of file


Reviews:
user: login: SinYusi
body: 벌써 1달이 지나갔다니 ㅠㅠ 고생하셨습니다.
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-26T07:07:12Z
user: login: gaeunchoi
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-26T07:09:14Z
user: login: gaeunchoi
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-26T07:09:38Z
user: login: yg5057
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-26T07:15:42Z
user: login: soyeon0116
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-26T07:19:18Z
user: login: soyeon0116
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-03-26T07:19:55Z

Review comments:
diff_hunk: @@ -0,0 +1,13 @@
+function solution(players, callings) {
+  // 등수 따로 기록
+  let rank = Object.fromEntries(players.map((name, rank) => [name, rank]));
path: 최가은/프로그래머스 Lv. 1/달리기 경주/달리기 경주.js
user: login: SinYusi
body: 객체 전환 배우고 갑니다..
created_at: 2025-03-26T07:05:06Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,15 @@
+def solution(s):
+    result = ''
+    tmp = ''
+    convertNum = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
path: 최가은/프로그래머스 Lv. 1/숫자 문자열과 영단어/숫자 문자열과 영단어.py
user: login: SinYusi
body: 아 이렇게 풀어도 되겠군요. 배열 인덱스를 활용해서!!!
created_at: 2025-03-26T07:06:02Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,10 @@
+function solution(sizes) {
+  const reSizes = sizes.map(([garo, sero]) => garo < sero ? [sero, garo] : [garo, sero]);
path: 최가은/프로그래머스 Lv. 1/최소직사각형/최소직사각형.js
user: login: SinYusi
body: ㅋㅋ 가로 세로 뭔가 귀여운데요
created_at: 2025-03-26T07:07:00Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,15 @@
+def solution(s):
+    result = ''
+    tmp = ''
+    convertNum = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
path: 최가은/프로그래머스 Lv. 1/숫자 문자열과 영단어/숫자 문자열과 영단어.py
user: login: gaeunchoi
body: 원래 key-value 쌍을 할까 생각했는데 생각해보니까 value가 인덱스값이 되겠더라구용 그래서 요래했슴다 :)
created_at: 2025-03-26T07:09:13Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,10 @@
+function solution(sizes) {
+  const reSizes = sizes.map(([garo, sero]) => garo < sero ? [sero, garo] : [garo, sero]);
path: 최가은/프로그래머스 Lv. 1/최소직사각형/최소직사각형.js
user: login: gaeunchoi
body: ㅋㅋㅋㅋㅋㅋㅋㅋ아 변수명 생각하기 싫어서 ... ㅋㅋㅋㅋㅋㅋ느낌 가는대로 ~ 🤭
created_at: 2025-03-26T07:09:38Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,13 @@
+function solution(players, callings) {
+  // 등수 따로 기록
+  let rank = Object.fromEntries(players.map((name, rank) => [name, rank]));
path: 최가은/프로그래머스 Lv. 1/달리기 경주/달리기 경주.js
user: login: yg5057
body: 저도 배우고 갑니다... 한줄로 끝낼 수 있군요,,
created_at: 2025-03-26T07:15:42Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,13 @@
+function solution(players, callings) {
+  // 등수 따로 기록
+  let rank = Object.fromEntries(players.map((name, rank) => [name, rank]));
+  callings.forEach(name => {
+    let idx = rank[name];
+    
+    rank[name]--;
+    rank[players[idx-1]]++;
+    [players[idx-1], players[idx]] = [players[idx], players[idx-1]];
path: 최가은/프로그래머스 Lv. 1/달리기 경주/달리기 경주.js
user: login: soyeon0116
body: 오!! 이런 방법이!
created_at: 2025-03-26T07:19:18Z
author_association: CONTRIBUTOR
diff_hunk: @@ -0,0 +1,13 @@
+function solution(s) {
+  s = s.replace(/zero/gi, 0)
+  .replace(/one/gi, 1)
+  .replace(/two/gi, 2)
+  .replace(/three/gi, 3)
+  .replace(/four/gi, 4)
+  .replace(/five/gi, 5)
+  .replace(/six/gi, 6)
+  .replace(/seven/gi, 7)
+  .replace(/eight/gi, 8)
+  .replace(/nine/gi, 9)
+  return +s;
path: 최가은/프로그래머스 Lv. 1/숫자 문자열과 영단어/숫자 문자열과 영단어.js
user: login: soyeon0116
body: 정규식은 늘 볼 때마다 어려워요..
created_at: 2025-03-26T07:19:55Z
author_association: CONTRIBUTOR

PR comments:
user: login: yg5057
created_at: 2025-03-26T07:13:36Z
body: 한 달 동안 정말 수고 많으셨어요 팀장님!!🥹
팀 스터디 덕에 많이 배우고 있습니당!! 
author_association: CONTRIBUTOR
user: login: ksy21019
created_at: 2025-03-26T07:19:51Z
body: 한 달 엄청 빨리 지나간 것 같아요!
마지막까지 파이팅 해보아요:) 오늘도 수고 많으셨습니다~
author_association: CONTRIBUTOR
user: login: soyeon0116
created_at: 2025-03-26T07:24:54Z
body: 항상 문제 골라주시고.. 늘 감사합니다!ㅎㅎㅎ
오늘도 고생 많으셨습니다!!
author_association: CONTRIBUTOR