μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
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 |
- dataframe
- opencv
- μλν΄λΌμ°λ
- λΉ λ°μ΄ν°
- ν μ€νΈλΆμ
- μ£Όμ±λΆλΆμ
- ν¬λ‘€λ§
- ADsP
- λ°μ΄ν°λΆμμ€μ λ¬Έκ°
- LDA
- νμ΄μ¬
- t-test
- datascience
- μ€λ²μνλ§
- κ΅°μ§ν
- DBSCAN
- Lambda
- numpy
- Python
- λΉ λ°μ΄ν°λΆμκΈ°μ¬
- λ°μ΄ν°λΆκ· ν
- iloc
- λ°μ΄ν°λΆμμ λ¬Έκ°
- pandas
- λμνλ³Έ
- λ 립νλ³Έ
- μΈλμνλ§
- λ°μ΄ν°λΆμ
- ADP
- PCA
Data Science LAB
[Python] νλ‘κ·Έλλ¨Έμ€ μ½λ©ν μ€νΈ μ°μ΅ level2 (νΌλ‘λ) λ³Έλ¬Έ
[Python] νλ‘κ·Έλλ¨Έμ€ μ½λ©ν μ€νΈ μ°μ΅ level2 (νΌλ‘λ)
γ γ γ γ 2022. 12. 19. 17:541. λ¬Έμ μ€λͺ
XXκ²μμλ νΌλ‘λ μμ€ν (0 μ΄μμ μ μλ‘ ννν©λλ€)μ΄ μμΌλ©°, μΌμ νΌλ‘λλ₯Ό μ¬μ©ν΄μ λμ μ ννν μ μμ΅λλ€. μ΄λ, κ° λμ λ§λ€ ννμ μμνκΈ° μν΄ νμν "μ΅μ νμ νΌλ‘λ"μ λμ ννμ λ§μ³€μ λ μλͺ¨λλ "μλͺ¨ νΌλ‘λ"κ° μμ΅λλ€. "μ΅μ νμ νΌλ‘λ"λ ν΄λΉ λμ μ νννκΈ° μν΄ κ°μ§κ³ μμ΄μΌ νλ μ΅μνμ νΌλ‘λλ₯Ό λνλ΄λ©°, "μλͺ¨ νΌλ‘λ"λ λμ μ ννν ν μλͺ¨λλ νΌλ‘λλ₯Ό λνλ λλ€. μλ₯Ό λ€μ΄ "μ΅μ νμ νΌλ‘λ"κ° 80, "μλͺ¨ νΌλ‘λ"κ° 20μΈ λμ μ νννκΈ° μν΄μλ μ μ μ νμ¬ λ¨μ νΌλ‘λλ 80 μ΄μ μ΄μ΄μΌ νλ©°, λμ μ ννν νμλ νΌλ‘λ 20μ΄ μλͺ¨λ©λλ€.
μ΄ κ²μμλ ν루μ ν λ²μ© ννν μ μλ λμ μ΄ μ¬λ¬κ° μλλ°, ν μ μ κ° μ€λ μ΄ λμ λ€μ μ΅λν λ§μ΄ νννλ € ν©λλ€. μ μ μ νμ¬ νΌλ‘λ kμ κ° λμ λ³ "μ΅μ νμ νΌλ‘λ", "μλͺ¨ νΌλ‘λ"κ° λ΄κΈ΄ 2μ°¨μ λ°°μ΄ dungeons κ° λ§€κ°λ³μλ‘ μ£Όμ΄μ§ λ, μ μ κ° ννν μ μλ μ΅λ λμ μλ₯Ό return νλλ‘ solution ν¨μλ₯Ό μμ±ν΄μ£ΌμΈμ.
2. μ ν μ¬ν
- kλ 1 μ΄μ 5,000 μ΄νμΈ μμ°μμ λλ€.
- dungeonsμ μΈλ‘(ν) κΈΈμ΄(μ¦, λμ μ κ°μ)λ 1 μ΄μ 8 μ΄νμ
λλ€.
- dungeonsμ κ°λ‘(μ΄) κΈΈμ΄λ 2 μ λλ€.
- dungeonsμ κ° νμ κ° λμ μ ["μ΅μ νμ νΌλ‘λ", "μλͺ¨ νΌλ‘λ"] μ λλ€.
- "μ΅μ νμ νΌλ‘λ"λ νμ "μλͺ¨ νΌλ‘λ"λ³΄λ€ ν¬κ±°λ κ°μ΅λλ€.
- "μ΅μ νμ νΌλ‘λ"μ "μλͺ¨ νΌλ‘λ"λ 1 μ΄μ 1,000 μ΄νμΈ μμ°μμ λλ€.
- μλ‘ λ€λ₯Έ λμ μ ["μ΅μ νμ νΌλ‘λ", "μλͺ¨ νΌλ‘λ"]κ° μλ‘ κ°μ μ μμ΅λλ€.
νμ¬ νΌλ‘λλ 80μ λλ€.
λ§μ½, 첫 λ²μ§Έ → λ λ²μ§Έ → μΈ λ²μ§Έ λμ μμλ‘ νννλ€λ©΄
- νμ¬ νΌλ‘λλ 80μ΄λ©°, 첫 λ²μ§Έ λμ μ λκΈ°μν΄ νμν "μ΅μ νμ νΌλ‘λ" λν 80μ΄λ―λ‘, 첫 λ²μ§Έ λμ μ ννν μ μμ΅λλ€. 첫 λ²μ§Έ λμ μ "μλͺ¨ νΌλ‘λ"λ 20μ΄λ―λ‘, λμ μ ννν ν λ¨μ νΌλ‘λλ 60μ λλ€.
- λ¨μ νΌλ‘λλ 60μ΄λ©°, λ λ²μ§Έ λμ μ λκΈ°μν΄ νμν "μ΅μ νμ νΌλ‘λ"λ 50μ΄λ―λ‘, λ λ²μ§Έ λμ μ ννν μ μμ΅λλ€. λ λ²μ§Έ λμ μ "μλͺ¨ νΌλ‘λ"λ 40μ΄λ―λ‘, λμ μ ννν ν λ¨μ νΌλ‘λλ 20μ λλ€.
- λ¨μ νΌλ‘λλ 20μ΄λ©°, μΈ λ²μ§Έ λμ μ λκΈ°μν΄ νμν "μ΅μ νμ νΌλ‘λ"λ 30μ λλ€. λ°λΌμ μΈ λ²μ§Έ λμ μ ννν μ μμ΅λλ€.
λ§μ½, 첫 λ²μ§Έ → μΈ λ²μ§Έ → λ λ²μ§Έ λμ μμλ‘ νννλ€λ©΄
- νμ¬ νΌλ‘λλ 80μ΄λ©°, 첫 λ²μ§Έ λμ μ λκΈ°μν΄ νμν "μ΅μ νμ νΌλ‘λ" λν 80μ΄λ―λ‘, 첫 λ²μ§Έ λμ μ ννν μ μμ΅λλ€. 첫 λ²μ§Έ λμ μ "μλͺ¨ νΌλ‘λ"λ 20μ΄λ―λ‘, λμ μ ννν ν λ¨μ νΌλ‘λλ 60μ λλ€.
- λ¨μ νΌλ‘λλ 60μ΄λ©°, μΈ λ²μ§Έ λμ μ λκΈ°μν΄ νμν "μ΅μ νμ νΌλ‘λ"λ 30μ΄λ―λ‘, μΈ λ²μ§Έ λμ μ ννν μ μμ΅λλ€. μΈ λ²μ§Έ λμ μ "μλͺ¨ νΌλ‘λ"λ 10μ΄λ―λ‘, λμ μ ννν ν λ¨μ νΌλ‘λλ 50μ λλ€.
- λ¨μ νΌλ‘λλ 50μ΄λ©°, λ λ²μ§Έ λμ μ λκΈ°μν΄ νμν "μ΅μ νμ νΌλ‘λ"λ 50μ΄λ―λ‘, λ λ²μ§Έ λμ μ ννν μ μμ΅λλ€. λ λ²μ§Έ λμ μ "μλͺ¨ νΌλ‘λ"λ 40μ΄λ―λ‘, λμ μ ννν ν λ¨μ νΌλ‘λλ 10μ λλ€.
λ°λΌμ μ΄ κ²½μ° μΈ λμ μ λͺ¨λ ννν μ μμΌλ©°, μ μ κ° ννν μ μλ μ΅λ λμ μλ 3μ λλ€.
3. λ΄ νμ΄
from itertools import permutations
def solution(k, dungeons):
answer = -1
per = list(permutations(dungeons,len(dungeons)))
for i in per:
a = k
num = 0
for j in i:
if j[0] <= a:
a -= j[1]
num += 1
answer = max(answer,num)
return answer
4. λ€λ₯Έ μ¬λ νμ΄
1)
solution = lambda k, d: max([solution(k - u, d[:i] + d[i+1:]) + 1 for i, (m, u) in enumerate(d) if k >= m] or [0])
2)
def solution(k, dungeons):
answer = 0
dungeons = sorted(dungeons, key = lambda x : ((x[1]+x[0])/x[0],x[1]))
for x,y in dungeons:
print("x :", x, "y : ", y)
if k >= x:
k -= y
answer += 1
return answer