๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป iOSun
article thumbnail

๋ฌธ์ œ ์„ค๋ช…

 

๋ฌธ์ œ ํ’€์ด

0์„ ๊ธฐ์ค€์œผ๋กœ P๋ฅผ ํŒŒ์•…ํ•œ๋‹ค. 0P0, 0P, P0, P ํ˜•ํƒœ ๋ชจ๋‘ ๊ฐ€๋Šฅ

์ฆ‰, 211020101011์ด ์žˆ์œผ๋ฉด 0์„ ๊ธฐ์ค€์œผ๋กœ ์ž˜๋ผ์ฃผ๋ฉด ๋œ๋‹ค.

-> 211, 2, 1, 1, 11 

๊ทธ ํ›„ ์ˆซ์ž๋“ค์„ ์†Œ์ˆ˜์ธ์ง€ ์•„๋‹Œ์ง€ ํŒ๋ณ„ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

 

๋‹ค๋งŒ ์ด ๋ฌธ์ œ์˜ ํ•ต์‹ฌ์€ ์‹œ๊ฐ„ ๋ณต์žก๋„์ด๋‹ค.

์†Œ์ˆ˜๋ฅผ ๊ตฌํ•  ๋•Œ 36์ด๋ฉด 1~36๋ชจ๋‘ ๋Œ๋ ค์„œ ๋‚˜๋จธ์ง€๊ฐ€ 0์ธ๊ฑธ ์ฐพ์œผ๋ฉด ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋‚œ๋‹ค.

 

36์˜ ์•ฝ์ˆ˜๋ฅผ ๋ณด๋ฉด

2 4 6 9 18

 

36์˜ ์ œ๊ณฑ๊ทผ์ธ 6์„ ๊ธฐ์ค€์œผ๋กœ ์ง์„ ์ด๋ฃฌ๋‹ค.

๋”ฐ๋ผ์„œ n์˜ ์ œ๊ณฑ๊ทผ๊นŒ์ง€๋งŒ for๋ฌธ์„ ๋Œ๋ ค์ค˜๋„ ์†Œ์ˆ˜์ธ์ง€ ์•„๋‹Œ์ง€ ํŒ๋ณ„ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

 

์ฝ”๋“œ

func solution(_ n:Int, _ k:Int) -> Int {
    
    func isPrime(_ num: Int) -> Bool {
        if num < 2 {
            return false
        }
        if num == 2 || num == 3 {
            return true
        }
        
        // ์ œ๊ณฑ๊ทผ๊นŒ์ง€๋งŒ ๊ฒ€์‚ฌํ•ด๋„ ์†Œ์ˆ˜์ธ์ง€ ํŒ๋ณ„ ๊ฐ€๋Šฅ
        let s = Int(sqrt(Double(num)))
        for i in 2...s {
            if num % i == 0 {
                return false
            }
        }
        return true
    }
    // k์ง„์ˆ˜๋กœ ๋ณ€ํ™˜ (String(n, radix: ))
    let num = String(n, radix: k)
    
    // 0์„ ๊ธฐ์ค€์œผ๋กœ ์ˆซ์ž๋ฅผ ๋‚˜๋ˆ”
    let nums = num.split(separator: "0").map {Int(String($0))!}
    var answer = 0
    
    for n in nums {
        if isPrime(n) {
            answer += 1
        }
    }
    return answer
}

 

 

ํ›„๊ธฐ

ํ’€์ด์‹œ๊ฐ„: 35๋ถ„

 

1.

ํ…Œ์ŠคํŠธ์ผ€์ด์Šค 1๋ฒˆ์—์„œ ์‹œ๊ฐ„์ดˆ๊ณผ๊ฐ€ ๋‚ฌ๋‹ค. ์†Œ์ˆ˜ ๊ตฌํ•˜๋Š” ๋กœ์ง์—์„œ ํ•ด๊ฒฐํ•˜๋ ค๋‹ค๊ฐ€ ๊ฒฐ๊ตญ ํžŒํŠธ๋ฅผ ๋ณด๊ณ .. ์ œ๊ณฑ๊ทผ์„ ์ด์šฉํ•ด ์†Œ์ˆ˜๋ฅผ ๊ตฌํ•ด ํ•ด๊ฒฐ

์•„๋งˆ ํžŒํŠธ ์—†์œผ๋ฉด ์ƒ๊ฐ ๋ชปํ–ˆ์„ ๊ฒƒ ๊ฐ™๋‹ค..๐Ÿซ 

์†Œ์ˆ˜ ๊ตฌํ•˜๋Š” ๊ฑด ์™ธ์›Œ๋‘๋Š”๊ฒŒ ๋‚˜์„๋“ฏ

 

2.

์™ธ์šธ ํ•จ์ˆ˜๋“ค

 

k์ง„์ˆ˜ ๋ณ€ํ™˜

ex) 10์„ 2์ง„์ˆ˜๋กœ ๋ณ€ํ™˜

String(10, radix: 2)

 

์ œ๊ณฑ๊ทผ ๊ตฌํ•˜๊ธฐ

sqrt(36) 

-> 6

 

์ œ๊ณฑ ๊ตฌํ•˜๊ธฐ

pow(3, 2) 

-> 9

profile

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป iOSun

@iosun

ํฌ์ŠคํŒ…์ด ์ข‹์•˜๋‹ค๋ฉด "์ข‹์•„์š”โค๏ธ" ๋˜๋Š” "๊ตฌ๋…๐Ÿ‘๐Ÿป" ํ•ด์ฃผ์„ธ์š”!

profile on loading

Loading...