μκ·Όμ΄λ μΉκ΅¬λ€κ³Ό ν¨κ» SFμνλ₯Ό μ°μΌλ €κ³ νλ€. μ΄ μνλ μΈκ³ μ§νμ΄ νμνλ€. μ€μ λ‘ μ°μ£Όμ μ νκ³ μΈκ³ νμ±μ κ°μ 촬μμ ν μ μκΈ° λλ¬Έμ, μ»΄ν¨ν° κ·Έλν½μΌλ‘ CGμ²λ¦¬λ₯Ό νλ €κ³ νλ€.
μΈκ³ μ§νμ μ€μ μ΄λ μκ³ λ¦¬μ¦μ μ΄μ©ν΄μ λ§λ€λ €κ³ νλ€.
μκ³ λ¦¬μ¦μ μμνλ©΄μ μκ·Όμ΄λ μ μ¬κ°νμ μ΄λ£¨λ μ 4κ°λ₯Ό κ³ λ₯Έλ€. κ·Έ νμλ λ€μκ³Ό κ°μ κ³Όμ μ κ±°μ³μ μ§νμ λ§λ λ€.
μ μ¬κ°νμ κ° λ³μ μ€μμ μ μ νλ μΆκ°νλ€.
μ μ¬κ°νμ μ€μ¬μ μ μ νλ μΆκ°νλ€.
μ΄κΈ° μνμμ μμ κ°μ κ³Όμ μ ν λ² κ±°μΉλ©΄ μ΄ 4κ°μ μ μ¬κ°νμ΄ μλ‘ μκΈ΄λ€. μ΄μ κ°μ κ³Όμ μ μκ·Όμ΄κ° λ§μ‘±ν λ κΉμ§ κ³μνλ€.
μλ κ·Έλ¦Όμ κ³Όμ μ μ΄ 2λ² κ±°μ³€μ λκΉμ§μ λͺ¨μ΅μ΄λ€.
μ΄κΈ° μν - μ 4κ° 1λ² - μ 9κ° 2λ² - 25κ°
μκ·Όμ΄λ μ΄λ€ μ μ ν κ° λ³΄λ€ λ§μ μ μ¬κ°νμ ν¬ν¨λ μ μλ€λ μ¬μ€μ μμλ€. λ©λͺ¨λ¦¬ μλͺ¨λμ μ€μ΄κΈ° μν΄μ μ€λ³΅νλ μ μ ν λ²λ§ μ μ₯νλ €κ³ νλ€. κ³Όμ μ Nλ² κ±°μΉ ν μ λͺ κ°λ₯Ό μ μ₯ν΄μΌ νλμ§ κ΅¬νλ νλ‘κ·Έλ¨μ μμ±νμμ€.
첫째 μ€μ Nμ΄ μ£Όμ΄μ§λ€. (1 β€ N β€ 15)
첫째 μ€μ κ³Όμ μ Nλ² κ±°μΉ ν μ μ μλ₯Ό μΆλ ₯νλ€.
μμ μ λ ₯ 1
μμ μΆλ ₯ 1
μμ μ λ ₯ 2
μμ μΆλ ₯ 2
μμ μ λ ₯ 3
μμ μΆλ ₯ 3
const input = require('fs').readFileSync('/dev/stdin').toString().trim()
const num = Number(input)
// μ΅μ΄ ν λ³μ μ μ
let pointCount = 2
let result = 0
// κ·μΉμ κ°μ₯ μμ μ¬κ°νμ 2κ°μ μ μ΄ μλ€λ μ
// Nμ΄ λμ΄λ κ²½μ° ν λ³μ μ¬κ°ν κ°μλ 2λ°°λ‘ λμ΄λ¨
// ν° μ¬κ°νμ ν λ³μμ μ¬κ°νμ μ + 1 κ°μ μ μ΄ μμ
// μ¦ Nμ΄ 2μΈ μ¬κ°νμ μ¬κ°νμ΄ 4κ°μ΄λ©° μ μ΄ 5κ°μ΄κ³ , κ°λ‘ μΈλ‘ μ μ μλ 5 * 5 = 25
// λ§μ½ Nμ΄ 3μ΄λΌλ©΄? μ¬κ°νμ΄ 8κ°μ΄λ©° μ μ΄ 9κ°κ³ , κ°λ‘ μΈλ‘ μ μ μλ 9 * 9 = 81
// Nμ΄ 2 μ΄μμΈ κ²½μ°λΆν°, iλ₯Ό 1μμ 1μ© μ¦κ°μν€λ©°, μ¬κ°νμ κ°μλ₯Ό 2λ°° μ¦κ°μν΄
for(let i = 1 ; i < num ; i ++) {
pointCount *= 2
}
// κ²°κ΄κ°μ, μ¬κ°νμ κ°μ + 1(ν λ³μ μ μ)μ μ κ³±(κ°λ‘ * μΈλ‘)
result = (pointCount+1)**2
console.log(result)