โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„/Math

[์ˆ˜ํ•™ / Kotlin] BOJ 11050 ~ 11051 ์ดํ•ญ ๊ณ„์ˆ˜ (1 ~ 2)

2022. 4. 6. 10:34
๋ชฉ์ฐจ
  1. ์ดํ•ญ ๊ณ„์ˆ˜ 1
  2. ๋ฌธ์ œ
  3. ํ’€์ด ์–ธ์–ด
  4. ์ฝ”๋“œ
  5. ํ’€์ด ๋ฐฉ๋ฒ•
  6. ๊ฒฐ๊ณผ
  7. ์ดํ•ญ ๊ณ„์ˆ˜ 2
  8. ๋ฌธ์ œ
  9. ์ฝ”๋“œ
  10. ํ’€์ด ๋ฐฉ๋ฒ•
  11. ๊ฒฐ๊ณผ

์ดํ•ญ ๊ณ„์ˆ˜ 1

๋ฌธ์ œ

ํ’€์ด ์–ธ์–ด

Kotiln

์ฝ”๋“œ

import java.util.*

lateinit var array: Array<Int>
var n = 0
var k = 0

fun main() = with(Scanner(System.`in`)) {
    n = nextInt()
    k = nextInt()

    // ์žฌ๊ท€ ๋Œ€์‹  DP๋กœ ํŒฉํ† ๋ฆฌ์–ผ ๊ตฌํ˜„
    array = Array(n + 1) { 1 }

    // ํŒฉํ† ๋ฆฌ์–ผ ๊ณ„์‚ฐ
    for (i in 2..n) {
        array[i] = array[i - 1] * i
    }

    // ์กฐํ•ฉ ๊ณต์‹ ์ ์šฉ
    // nCr = n! / (n-r)! * r!
    println(array[n] / (array[n - k] * array[k]))
}

ํ’€์ด ๋ฐฉ๋ฒ•

๊ณ ๋“ฑํ•™๊ต ๋•Œ ๋ฐฐ์šด ์กฐํ•ฉ ๊ณต์‹ ์„ ์ ์šฉํ•˜๋ฉด ์–ด๋ ต์ง€ ์•Š๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค.

๊ฒฐ๊ณผ

์ดํ•ญ ๊ณ„์ˆ˜ 2

๋ฌธ์ œ

์ฝ”๋“œ

import java.util.*

lateinit var array: Array<Array<Int>>
var n = 0
var k = 0

fun main() = with(Scanner(System.`in`)) {
    n = nextInt()
    k = nextInt()

    // ํŒŒ์Šค์นผ์˜ ์‚ผ๊ฐํ˜•์„ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฐ์—ด ์ดˆ๊ธฐํ™”
    array = Array(n + 1) { Array(n + 1) { 1 } }

    // nCr = n-1Ck-1 + n-1Ck
    for (i in 1..n) {
        for (j in 0..n) {
            if (i == j || j == 0) {
                array[i][j] = 1
            } else {
                array[i][j] = (array[i - 1][j - 1] + array[i - 1][j]) % 10007
            }
        }
    }

    println(array[n][k])
}

ํ’€์ด ๋ฐฉ๋ฒ•

์ดํ•ญ ๊ณ„์ˆ˜ 1 ๋ณด๋‹ค ์ˆ˜๊ฐ€ ์ปค์กŒ๋‹ค. ๋‹จ์ˆœํžˆ DP ๋กœ ๊ณ„์‚ฐํ•˜๋ฉด Int ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚˜๋ฏ€๋กœ ํ„ฐ์ ธ๋ฒ„๋ฆฐ๋‹ค. Long ์œผ๋กœ ๊ณ„์‚ฐํ•ด๋„ ํ„ฐ์ ธ๋ฒ„๋ฆฐ๋‹ค. ๋ฌธ์ œ์—์„œ ์•Œ๋ ค์ค€ ๊ฒƒ์ฒ˜๋Ÿผ ๋ชจ๋“ˆ๋Ÿฌ ์—ฐ์‚ฐ์„ ์ ์šฉํ•ด์•ผ ํ•œ๋‹ค. ์ฒ˜์Œ์—๋Š” ์ด์ „ ๋ฌธ์ œ์—์„œ ๋ชจ๋“ˆ๋Ÿฌ ๋‚˜๋ˆ—์…ˆ ์„ ์ ์šฉํ•˜๋ ค ํ–ˆ๋Š”๋ฐ ์ด ๋ถ€๋ถ„์ด ์ƒ๊ฐ๋ณด๋‹ค ๊นŒ๋‹ค๋กœ์›Œ์„œ ์ผ๋‹จ ๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ์ ‘๊ทผํ–ˆ๋‹ค.

 

ํŒŒ์Šค์นผ์˜ ์‚ผ๊ฐํ˜• ์„ ์ ์šฉํ–ˆ๋‹ค.

๋‚˜๋ฌด์œ„ํ‚ค - ํŒŒ์Šค์นผ์˜ ์‚ผ๊ฐํ˜•

๊ฒฐ๊ณผ

์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)
  1. ์ดํ•ญ ๊ณ„์ˆ˜ 1
  2. ๋ฌธ์ œ
  3. ํ’€์ด ์–ธ์–ด
  4. ์ฝ”๋“œ
  5. ํ’€์ด ๋ฐฉ๋ฒ•
  6. ๊ฒฐ๊ณผ
  7. ์ดํ•ญ ๊ณ„์ˆ˜ 2
  8. ๋ฌธ์ œ
  9. ์ฝ”๋“œ
  10. ํ’€์ด ๋ฐฉ๋ฒ•
  11. ๊ฒฐ๊ณผ
kodo_o
kodo_o
iOS ๊ฟ€์žผ!
kodo_o
๐ŸŽ๐Ÿ
kodo_o
์ „์ฒด
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (149)
    • ๐Ÿ”จ ํ”„๋กœ์ ํŠธ (0)
      • TP 1 (0)
      • WhiteHCCTV (0)
      • FootPrint (0)
    • ๐Ÿ’ป ๊ฐœ๋ฐœ (63)
      • iOS (30)
      • Android (6)
      • Kotlin (4)
      • Flutter (9)
      • Node.js (5)
      • Architecture (1)
      • ์˜ค๋Š˜์˜ ์‚ฝ์งˆ (7)
      • ์—๋Ÿฌ์™€์˜ ๋™์นจ (1)
    • โœ๏ธ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (6)
      • Graph (6)
      • String (0)
      • Sort (0)
    • โœ๏ธ ์ฝ”ํ…Œ ์ค€๋น„ (44)
      • Math (1)
      • Implementation (3)
      • String (3)
      • Brute Force (5)
      • Back Tracking (7)
      • Greedy (0)
      • Dynamic Programming (13)
      • Binary Search (1)
      • DFS, BFS (5)
      • Shortest Path (2)
      • Two Pointer (4)
      • MST (0)
    • ๐Ÿ“š CS (6)
      • Operating System (6)
    • โ›น๏ธ ๋ผ์ดํ”„ (30)
      • 2020 ๊ฒจ์šธ๋ฐฉํ•™ ๋ชจ๊ฐ์ฝ”(๊ฐœ์ธ) (12)
      • 2021 ์—ฌ๋ฆ„๋ฐฉํ•™ ๋ชจ๊ฐ์ฝ”(๊ฐœ์ธ) (6)
      • ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ (1)
      • ํšŒ๊ณ  (10)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ๊นƒํ—ˆ๋ธŒ

์ธ๊ธฐ ๊ธ€

์ตœ๊ทผ ๊ธ€

์ตœ๊ทผ ๋Œ“๊ธ€

hELLO ยท Designed By ์ •์ƒ์šฐ.
kodo_o
[์ˆ˜ํ•™ / Kotlin] BOJ 11050 ~ 11051 ์ดํ•ญ ๊ณ„์ˆ˜ (1 ~ 2)
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”

๋‹จ์ถ•ํ‚ค

๋‚ด ๋ธ”๋กœ๊ทธ

๋‚ด ๋ธ”๋กœ๊ทธ - ๊ด€๋ฆฌ์ž ํ™ˆ ์ „ํ™˜
Q
Q
์ƒˆ ๊ธ€ ์“ฐ๊ธฐ
W
W

๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€

๊ธ€ ์ˆ˜์ • (๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ์šฐ)
E
E
๋Œ“๊ธ€ ์˜์—ญ์œผ๋กœ ์ด๋™
C
C

๋ชจ๋“  ์˜์—ญ

์ด ํŽ˜์ด์ง€์˜ URL ๋ณต์‚ฌ
S
S
๋งจ ์œ„๋กœ ์ด๋™
T
T
ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ ์ด๋™
H
H
๋‹จ์ถ•ํ‚ค ์•ˆ๋‚ด
Shift + /
โ‡ง + /

* ๋‹จ์ถ•ํ‚ค๋Š” ํ•œ๊ธ€/์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์—์„œ๋งŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.