μΌ | μ | ν | μ | λͺ© | κΈ | ν |
---|---|---|---|---|---|---|
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 |
- λ°μ΄ν°λΆμμ λ¬Έκ°
- pandas
- λμνλ³Έ
- κ΅°μ§ν
- ADP
- DBSCAN
- iloc
- λ°μ΄ν°λΆμμ€μ λ¬Έκ°
- νμ΄μ¬
- λΉ λ°μ΄ν°
- μ€λ²μνλ§
- μλν΄λΌμ°λ
- λΉ λ°μ΄ν°λΆμκΈ°μ¬
- λ°μ΄ν°λΆκ· ν
- Lambda
- numpy
- dataframe
- LDA
- ν¬λ‘€λ§
- λ 립νλ³Έ
- λ°μ΄ν°λΆμ
- PCA
- datascience
- opencv
- Python
- μ£Όμ±λΆλΆμ
- ADsP
- ν μ€νΈλΆμ
- μΈλμνλ§
- t-test
Data Science LAB
[Python] νλ‘κ·Έλλ¨Έμ€ μ½λ©ν μ€νΈ μ°μ΅ level2 (μ«μ μΉ΄λ λλκΈ°) λ³Έλ¬Έ
[Python] νλ‘κ·Έλλ¨Έμ€ μ½λ©ν μ€νΈ μ°μ΅ level2 (μ«μ μΉ΄λ λλκΈ°)
γ γ γ γ 2022. 12. 20. 15:181. λ¬Έμ μ€λͺ
μ² μμ μν¬λ μ μλμΌλ‘λΆν° μ«μκ° νλμ© μ ν μΉ΄λλ€μ μ λ°μ© λλ μ κ°μ§ ν, λ€μ λ 쑰건 μ€ νλλ₯Ό λ§μ‘±νλ κ°μ₯ ν° μμ μ μ aμ κ°μ ꡬνλ €κ³ ν©λλ€.
- μ² μκ° κ°μ§ μΉ΄λλ€μ μ ν λͺ¨λ μ«μλ₯Ό λλ μ μκ³ μν¬κ° κ°μ§ μΉ΄λλ€μ μ ν λͺ¨λ μ«μλ€ μ€ νλλ λλ μ μλ μμ μ μ a
- μν¬κ° κ°μ§ μΉ΄λλ€μ μ ν λͺ¨λ μ«μλ₯Ό λλ μ μκ³ , μ² μκ° κ°μ§ μΉ΄λλ€μ μ ν λͺ¨λ μ«μλ€ μ€ νλλ λλ μ μλ μμ μ μ a
μλ₯Ό λ€μ΄, μΉ΄λλ€μ 10, 5, 20, 17μ΄ μ ν μλ κ²½μ°μ λν΄ μκ°ν΄ λ΄ μλ€. λ§μ½, μ² μκ° [10, 17]μ΄ μ ν μΉ΄λλ₯Ό κ°κ³ , μν¬κ° [5, 20]μ΄ μ ν μΉ΄λλ₯Ό κ°λλ€λ©΄ λ 쑰건 μ€ νλλ₯Ό λ§μ‘±νλ μμ μ μ aλ μ‘΄μ¬νμ§ μμ΅λλ€. νμ§λ§, μ² μκ° [10, 20]μ΄ μ ν μΉ΄λλ₯Ό κ°κ³ , μν¬κ° [5, 17]μ΄ μ ν μΉ΄λλ₯Ό κ°λλ€λ©΄, μ² μκ° κ°μ§ μΉ΄λλ€μ μ«μλ λͺ¨λ 10μΌλ‘ λλ μ μκ³ , μν¬κ° κ°μ§ μΉ΄λλ€μ μ«μλ λͺ¨λ 10μΌλ‘ λλ μ μμ΅λλ€. λ°λΌμ μ² μμ μν¬λ κ°κ° [10, 20]μ΄ μ ν μΉ΄λ, [5, 17]μ΄ μ ν μΉ΄λλ‘ λλ κ°μ‘λ€λ©΄ 쑰건μ ν΄λΉνλ μμ μ μ aλ 10μ΄ λ©λλ€.
μ² μκ° κ°μ§ μΉ΄λμ μ ν μ«μλ€μ λνλ΄λ μ μ λ°°μ΄ arrayAμ μν¬κ° κ°μ§ μΉ΄λμ μ ν μ«μλ€μ λνλ΄λ μ μ λ°°μ΄ arrayBκ° μ£Όμ΄μ‘μ λ, μ£Όμ΄μ§ 쑰건μ λ§μ‘±νλ κ°μ₯ ν° μμ μ μ aλ₯Ό returnνλλ‘ solution ν¨μλ₯Ό μμ±ν΄ μ£ΌμΈμ. λ§μ½, 쑰건μ λ§μ‘±νλ aκ° μλ€λ©΄, 0μ return ν΄ μ£ΌμΈμ.
2. μ ν μ¬ν
- 1 ≤ arrayAμ κΈΈμ΄ = arrayBμ κΈΈμ΄ ≤ 500,000
- 1 ≤ arrayAμ μμ, arrayBμ μμ ≤ 100,000,000
- arrayAμ arrayBμλ μ€λ³΅λ μμκ° μμ μ μμ΅λλ€.
3. λ΄ νμ΄
import math
def gcd_n(arr):
gcd = arr[0]
for i in arr:
gcd = math.gcd(gcd, i)
return gcd
def solution(arrayA, arrayB):
a = gcd_n(arrayA)
b = gcd_n(arrayB)
for i in arrayB:
if i % a == 0:
a = 0
break
for i in arrayA:
if i % b == 0:
b = 0
break
return max(a,b)
1. 리μ€νΈμ μ΅λ 곡μ½μλ₯Ό ꡬνλ ν¨μ μ μΈ
2. κ° λ¦¬μ€νΈ λ³ μ΅λ 곡μ½μ ꡬν¨
3. arrayBμ μμκ° arrayAμ μ΅λ 곡μ½μλ‘ λλ μ§λ©΄ 0 (λ°λλ λμΌνκ² μ μ©)
4. ν° μ λ°ν
4. λ€λ₯Έ μ¬λ νμ΄
from math import gcd
from functools import reduce
def check(arrayA, arrayB):
gcd_A = reduce(gcd, arrayA, arrayA[0])
factors = [i for i in range(1, gcd_A//2+1) if not gcd_A % i]
factors.append(gcd_A)
for factor in factors[::-1]:
if all(i % factor for i in arrayB):
return gcd_A
return 0
def solution(arrayA, arrayB):
return max(check(arrayA, arrayB), check(arrayB, arrayA))