πŸ“– Algorithm/πŸ“ λ°±μ€€

Kotlin 🍬 λ°±μ€€ 8단계 :: 2903 번

λ²ŒκΏ€μ˜€μ†Œλ¦¬πŸ¦‘ 2023. 5. 10. 21:30
λ°˜μ‘ν˜•

쀑앙 이동 μ•Œκ³ λ¦¬μ¦˜

문제   |

  μƒκ·Όμ΄λŠ” μΉœκ΅¬λ“€κ³Ό ν•¨κ»˜ SFμ˜ν™”λ₯Ό 찍으렀고 ν•œλ‹€. 이 μ˜ν™”λŠ” 외계 μ§€ν˜•μ΄ ν•„μš”ν•˜λ‹€. μ‹€μ œλ‘œ μš°μ£Όμ„ μ„ 타고 외계 행성에 κ°€μ„œ μ΄¬μ˜μ„ ν•  수 μ—†κΈ° λ•Œλ¬Έμ—, 컴퓨터 κ·Έλž˜ν”½μœΌλ‘œ CG처리λ₯Ό ν•˜λ €κ³  ν•œλ‹€.

  외계 μ§€ν˜•μ€ 쀑앙 이동 μ•Œκ³ λ¦¬μ¦˜μ„ μ΄μš©ν•΄μ„œ λ§Œλ“€λ €κ³  ν•œλ‹€.

  μ•Œκ³ λ¦¬μ¦˜μ„ μ‹œμž‘ν•˜λ©΄μ„œ μƒκ·Όμ΄λŠ” μ •μ‚¬κ°ν˜•μ„ μ΄λ£¨λŠ” 점 4개λ₯Ό κ³ λ₯Έλ‹€. κ·Έ ν›„μ—λŠ” λ‹€μŒκ³Ό 같은 과정을 κ±°μ³μ„œ μ§€ν˜•μ„ λ§Œλ“ λ‹€.

  1. μ •μ‚¬κ°ν˜•μ˜ 각 λ³€μ˜ 쀑앙에 점을 ν•˜λ‚˜ μΆ”κ°€ν•œλ‹€.

  2. μ •μ‚¬κ°ν˜•μ˜ 쀑심에 점을 ν•˜λ‚˜ μΆ”κ°€ν•œλ‹€.

  초기 μƒνƒœμ—μ„œ μœ„μ™€ 같은 과정을 ν•œ 번 거치면 총 4개의 μ •μ‚¬κ°ν˜•μ΄ μƒˆλ‘œ 생긴닀. 이와 같은 과정을 상근이가 λ§Œμ‘±ν•  λ•Œ κΉŒμ§€ κ³„μ†ν•œλ‹€.

  μ•„λž˜ 그림은 과정을 총 2번 거쳀을 λ•ŒκΉŒμ§€μ˜ λͺ¨μŠ΅μ΄λ‹€.

  μƒκ·Όμ΄λŠ” μ–΄λ–€ 점은 ν•œ 개 보닀 λ§Žμ€ μ •μ‚¬κ°ν˜•μ— 포함될 수 μžˆλ‹€λŠ” 사싀을 μ•Œμ•˜λ‹€. λ©”λͺ¨λ¦¬ μ†Œλͺ¨λŸ‰μ„ 쀄이기 μœ„ν•΄μ„œ μ€‘λ³΅ν•˜λŠ” 점을 ν•œ 번만 μ €μž₯ν•˜λ €κ³  ν•œλ‹€. 과정을 N번 거친 ν›„ 점 λͺ‡ 개λ₯Ό μ €μž₯ν•΄μ•Ό ν•˜λŠ”μ§€ κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

 

μž…λ ₯   |

  μ²«μ§Έ 쀄에 N이 주어진닀. (1 ≤ N ≤ 15)

 

좜λ ₯   |

  μ²«μ§Έ 쀄에 과정을 N번 거친 ν›„ μ μ˜ 수λ₯Ό 좜λ ₯ν•œλ‹€.

 

 

풀이  |

  λͺ¨λ“  점의 μˆ˜λŠ” ν•œ 변에 μžˆλŠ” 점의 수의 μ œκ³±μ΄λ‹€. ν•œ λ³€μ˜ 점의 μˆ˜λŠ” ν˜„μž¬ 점의 -1만큼 λŠ˜μ–΄λ‚œλ‹€.

 

 

λ‹΅μ•ˆ  |

import java.util.Scanner

fun main() = with(Scanner(System.`in`)) {
    val N = nextInt()
    var result = 2
    
    for (i in 0 until N) {
        result += (result - 1)
    }
    
    print(result * result)
}
λ°˜μ‘ν˜•