Tiny Bunny [python] ์ˆœ์„œ์Œ์˜ ๊ฐœ์ˆ˜
๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
programmers/์ž…๋ฌธ

[python] ์ˆœ์„œ์Œ์˜ ๊ฐœ์ˆ˜

by maesil 2024. 11. 12.

๋ฌธ์ œ ์„ค๋ช…

 

์ˆœ์„œ์Œ์ด๋ž€ ๋‘ ๊ฐœ์˜ ์ˆซ์ž๋ฅผ ์ˆœ์„œ๋ฅผ ์ •ํ•˜์—ฌ ์ง์ง€์–ด ๋‚˜ํƒ€๋‚ธ ์Œ์œผ๋กœ (a, b)๋กœ ํ‘œ๊ธฐํ•ฉ๋‹ˆ๋‹ค. ์ž์—ฐ์ˆ˜ n์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ ๋‘ ์ˆซ์ž์˜ ๊ณฑ์ด n์ธ ์ž์—ฐ์ˆ˜ ์ˆœ์„œ์Œ์˜ ๊ฐœ์ˆ˜๋ฅผ returnํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

 

 

์ž…์ถœ๋ ฅ ์˜ˆ

n result
20 6
100 9

 

 

์ œ์ถœ ๋‚ด์—ญ

def solution(n):
    return len([i for i in range(1, n+1) if not n%i])

 

 

๋‹ค๋ฅธ ํ’€์ด

def solution(n):
    answer = 0
    for i in range(1, int(n**0.5)+1):
        if n % i == 0:
            answer += 2
            if i * i == n:
                answer -= 1
    return answer

 

์•ฝ์ˆ˜๋ฅผ ์ฐพ์„ ๋•Œ ์ •์ˆ˜ n์˜ ์ œ๊ณฑ๊ทผ๊นŒ์ง€๋งŒ ํƒ์ƒ‰

e.g.) n = 36 / 6*6 = 36 ์ด๋ฏ€๋กœ ์ œ๊ณฑ๊ทผ 6์„ ๊ธฐ์ค€์œผ๋กœ 1, 2, 3, 4, 6์„ ํ™•์ธํ•˜๋ฉด ๋‚˜๋จธ์ง€ ์•ฝ์ˆ˜ 9, 12, 18, 36๋„ ์œ ์ถ” ๊ฐ€๋Šฅ

๋ฒ”์œ„๋ฅผ n์œผ๋กœ ์„ค์ •ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ์ข€ ๋” ํšจ์œจ์ 

 

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์ž…๋ฌธ Day8 ๋ฐฐ์—ด, ๊ตฌํ˜„, ์ˆ˜ํ•™

https://school.programmers.co.kr/learn/courses/30/lessons/120836

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

SW๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํ‰๊ฐ€, ๊ต์œก, ์ฑ„์šฉ๊นŒ์ง€ Total Solution์„ ์ œ๊ณตํ•˜๋Š” ๊ฐœ๋ฐœ์ž ์„ฑ์žฅ์„ ์œ„ํ•œ ๋ฒ ์ด์Šค์บ ํ”„

programmers.co.kr