deo2kim
λ§žμ™œν‹€
deo2kim
전체 방문자
였늘
μ–΄μ œ
  • λΆ„λ₯˜ 전체보기 N
    • CS
      • Algorithm
      • Data Structure
      • Network
      • DB
      • OS
    • Algorithm Problem
      • Python
      • JavaScript
    • Programming language
      • Python
      • JavaScript
    • Tool
      • Jquery
      • React
    • 개발
    • Infra N

λΈ”λ‘œκ·Έ 메뉴

  • ν™ˆ
  • νƒœκ·Έ
  • λ°©λͺ…둝

곡지사항

인기 κΈ€

졜근 λŒ“κΈ€

졜근 κΈ€

ν‹°μŠ€ν† λ¦¬

λ°˜μ‘ν˜•
hELLO Β· Designed By μ •μƒμš°.
deo2kim
Algorithm Problem/Python

[python] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ - μ•½μˆ˜μ˜ κ°œμˆ˜μ™€ λ§μ…ˆ

Algorithm Problem/Python

[python] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ - μ•½μˆ˜μ˜ κ°œμˆ˜μ™€ λ§μ…ˆ

2021. 6. 21. 17:56
λ°˜μ‘ν˜•

πŸ€”λ¬Έμ œ ν•΄κ²°

1. λ‚˜μ˜ 풀이

    μ•½μˆ˜μ˜ κ°œμˆ˜λ₯Ό κ΅¬ν•˜λŠ” λ°©λ²•:

    μ†ŒμΈμˆ˜ λΆ„ν•΄λ₯Ό ν•˜κ³ , κ·Έ κ±°λ“­μ œκ³±μ— +1을 ν•˜λ©΄ μ•½μˆ˜κ°€ λ‚˜μ˜¨λ‹€.

    κ±°λ“­μ œκ³±μ΄ 2개 μ΄μƒμ΄λΌλ©΄, κ°κ°μ˜ κ±°λ“­μ œκ³±μ— +1을 ν•˜κ³  κ·Έ μˆ«μžλ“€μ„ μ„œλ‘œ κ³±ν•΄μ€€λ‹€.

2. λ‹€λ₯Έ 쒋은 풀이

    λͺ¨λ“  μˆ«μžλŠ” μ•½μˆ˜μ˜ κ°œμˆ˜κ°€ μ§μˆ˜κ°œμ΄λ‹€.

    μ˜ˆμ™Έλ‘œ μ œκ³±μˆ˜λŠ” μ•½μˆ˜μ˜ κ°œμˆ˜κ°€ ν™€μˆ˜μ΄λ‹€. μ œκ³±μ΄κΈ° λ•Œλ¬Έ...

 

πŸ’¨ λ””ν΄νŠΈλ”•νŠΈμ™€ λ¦¬λ“€μŠ€κΉŒμ§€ μ¨κ°€λ©΄μ„œ μ—΄μ‹¬νžˆ ν’€μ—ˆμ§€λ§Œ, μˆ˜ν•™μ„ μž˜ν•˜λ©΄ μ €λ ‡κ²Œ μ‰½κ²Œ ν’€ 수 μžˆλ‹€....😜

 

πŸ’»μ†ŒμŠ€ μ½”λ“œ

from collections import defaultdict
from functools import reduce

def solution(left, right):
    """
    μ•½μˆ˜μ˜ 개수λ₯Ό κ΅¬ν•˜λŠ” 방법:
    μ†ŒμΈμˆ˜ λΆ„ν•΄λ₯Ό ν•˜κ³ , κ·Έ κ±°λ“­μ œκ³±μ— +1을 ν•˜λ©΄ μ•½μˆ˜κ°€ λ‚˜μ˜¨λ‹€.
    κ±°λ“­μ œκ³±μ΄ 2개 이상이라면, 각각의 κ±°λ“­μ œκ³±μ— +1을 ν•˜κ³  κ·Έ μˆ«μžλ“€μ„ μ„œλ‘œ κ³±ν•΄μ€€λ‹€.
    """
    """
    λͺ¨λ“  μˆ«μžλŠ” μ•½μˆ˜μ˜ κ°œμˆ˜κ°€ μ§μˆ˜κ°œμ΄λ‹€.
    μ˜ˆμ™Έλ‘œ μ œκ³±μˆ˜λŠ” μ•½μˆ˜μ˜ κ°œμˆ˜κ°€ ν™€μˆ˜μ΄λ‹€. 제곱이기 λ•Œλ¬Έ...
    """
    answer = 0

    plus_minus = []
    for i in range(left, right + 1):            
        power_dict = defaultdict(int)
        if i == 1:
            power_dict[1] = 0

        num = i
        div = 2
        while div <= i:
            if num % div == 0:
                power_dict[div] += 1
                num //= div
            else:
                div += 1
        
        result = list(map(lambda x: x+1,power_dict.values()))
        plus_minus.append(multiply(result))

    for operator in plus_minus:
        if operator % 2 == 0:
            answer += left
        else:
            answer -= left
        left += 1

    return answer

def multiply(arr):
    return reduce(lambda x, y: x * y, arr) 

 

πŸ“•λ¬Έμ œ 확인

좜처: ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€

링크: https://programmers.co.kr/learn/courses/30/lessons/77884?language=python3

 

μ½”λ”©ν…ŒμŠ€νŠΈ μ—°μŠ΅ - μ•½μˆ˜μ˜ κ°œμˆ˜μ™€ λ§μ…ˆ

두 μ •μˆ˜ left와 rightκ°€ λ§€κ°œλ³€μˆ˜λ‘œ μ£Όμ–΄μ§‘λ‹ˆλ‹€. leftλΆ€ν„° rightκΉŒμ§€μ˜ λͺ¨λ“  μˆ˜λ“€ μ€‘μ—μ„œ, μ•½μˆ˜μ˜ κ°œμˆ˜κ°€ 짝수인 μˆ˜λŠ” λ”ν•˜κ³ , μ•½μˆ˜μ˜ κ°œμˆ˜κ°€ ν™€μˆ˜μΈ μˆ˜λŠ” λΊ€ 수λ₯Ό return ν•˜λ„λ‘ solution ν•¨μˆ˜λ₯Ό μ™„μ„±ν•΄μ£Ό

programmers.co.kr

 

λ°˜μ‘ν˜•
μ €μž‘μžν‘œμ‹œ λΉ„μ˜λ¦¬ λ³€κ²½κΈˆμ§€ (μƒˆμ°½μ—΄λ¦Ό)

'Algorithm Problem > Python' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[python] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ - 이진 λ³€ν™˜ λ°˜λ³΅ν•˜κΈ°(μ›”κ°„ μ½”λ“œ μ±Œλ¦°μ§€ μ‹œμ¦Œ1)  (0) 2021.09.01
[python] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ - 닀단계 칫솔 판맀(2021 Dev-Matching: μ›Ή λ°±μ—”λ“œ 개발자(μƒλ°˜κΈ°))  (0) 2021.08.23
[python] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ - μŒμ–‘ λ”ν•˜κΈ°  (0) 2021.06.20
[python] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ - 둜또의 졜고 μˆœμœ„μ™€ μ΅œμ € μˆœμœ„  (0) 2021.05.20
[python] SWEA - 3131. 100만 μ΄ν•˜μ˜ λͺ¨λ“  μ†Œμˆ˜  (0) 2020.12.23
  • πŸ€”λ¬Έμ œ ν•΄κ²°
  • πŸ’»μ†ŒμŠ€ μ½”λ“œ
  • πŸ“•λ¬Έμ œ 확인
'Algorithm Problem/Python' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
  • [python] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ - 이진 λ³€ν™˜ λ°˜λ³΅ν•˜κΈ°(μ›”κ°„ μ½”λ“œ μ±Œλ¦°μ§€ μ‹œμ¦Œ1)
  • [python] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ - 닀단계 칫솔 판맀(2021 Dev-Matching: μ›Ή λ°±μ—”λ“œ 개발자(μƒλ°˜κΈ°))
  • [python] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ - μŒμ–‘ λ”ν•˜κΈ°
  • [python] ν”„λ‘œκ·Έλž˜λ¨ΈμŠ€ - 둜또의 졜고 μˆœμœ„μ™€ μ΅œμ € μˆœμœ„
deo2kim
deo2kim
μ½”λ”© κΈ°λ‘ν•˜κΈ°

ν‹°μŠ€ν† λ¦¬νˆ΄λ°”

단좕킀

λ‚΄ λΈ”λ‘œκ·Έ

λ‚΄ λΈ”λ‘œκ·Έ - κ΄€λ¦¬μž ν™ˆ μ „ν™˜
Q
Q
μƒˆ κΈ€ μ“°κΈ°
W
W

λΈ”λ‘œκ·Έ κ²Œμ‹œκΈ€

κΈ€ μˆ˜μ • (κΆŒν•œ μžˆλŠ” 경우)
E
E
λŒ“κΈ€ μ˜μ—­μœΌλ‘œ 이동
C
C

λͺ¨λ“  μ˜μ—­

이 νŽ˜μ΄μ§€μ˜ URL 볡사
S
S
맨 μœ„λ‘œ 이동
T
T
ν‹°μŠ€ν† λ¦¬ ν™ˆ 이동
H
H
단좕킀 μ•ˆλ‚΄
Shift + /
⇧ + /

* λ‹¨μΆ•ν‚€λŠ” ν•œκΈ€/영문 λŒ€μ†Œλ¬Έμžλ‘œ 이용 κ°€λŠ₯ν•˜λ©°, ν‹°μŠ€ν† λ¦¬ κΈ°λ³Έ λ„λ©”μΈμ—μ„œλ§Œ λ™μž‘ν•©λ‹ˆλ‹€.