-
Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 2485 λ²2024. 3. 11. 12:19λ°μν
κ°λ‘μ
λ¬Έμ |
μ§μ μΌλ‘ λμ΄μλ λλ‘μ ν νΈμ κ°λ‘μκ° μμμ κ°κ²©μΌλ‘ μ¬μ΄μ Έμλ€. KOI μμμλ κ°λ‘μλ€μ΄ λͺ¨λ κ°μ κ°κ²©μ΄ λλλ‘ κ°λ‘μλ₯Ό μΆκ°λ‘ μ¬λ μ¬μ μ μΆμ§νκ³ μλ€. KOI μμμλ μμ°λ¬Έμ λ‘ κ°λ₯ν ν κ°μ₯ μ μ μμ λ무λ₯Ό μ¬κ³ μΆλ€.
νΈμμ κ°λ‘μμ μμΉλ κΈ°μ€μ μΌλ‘ λΆν° λ¨μ΄μ Έ μλ κ±°λ¦¬λ‘ ννλλ©°, κ°λ‘μμ μμΉλ λͺ¨λ μμ μ μμ΄λ€.
μλ₯Ό λ€μ΄, κ°λ‘μκ° (1, 3, 7, 13)μ μμΉμ μλ€λ©΄ (5, 9, 11)μ μμΉμ κ°λ‘μλ₯Ό λ μ¬μΌλ©΄ λͺ¨λ κ°λ‘μλ€μ κ°κ²©μ΄ κ°κ² λλ€. λν, κ°λ‘μκ° (2, 6, 12, 18)μ μλ€λ©΄ (4, 8, 10, 14, 16)μ κ°λ‘μλ₯Ό λ μ¬μ΄μΌ νλ€.
μ¬μ΄μ Έ μλ κ°λ‘μμ μμΉκ° μ£Όμ΄μ§ λ, λͺ¨λ κ°λ‘μκ° κ°μ κ°κ²©μ΄ λλλ‘ μλ‘ μ¬μ΄μΌ νλ κ°λ‘μμ μ΅μμλ₯Ό ꡬνλ νλ‘κ·Έλ¨μ μμ±νλΌ. λ¨, μΆκ°λλ λ무λ κΈ°μ‘΄μ λλ¬΄λ€ μ¬μ΄μλ§ μ¬μ μ μλ€.
μ λ ₯ |
첫째 μ€μλ μ΄λ―Έ μ¬μ΄μ Έ μλ κ°λ‘μμ μλ₯Ό λνλ΄λ νλμ μ μ Nμ΄ μ£Όμ΄μ§λ€(3 ≤ N ≤ 100,000). λμ§Έ μ€λΆν° Nκ°μ μ€μλ κ° μ€λ§λ€ μ¬μ΄μ Έ μλ κ°λ‘μμ μμΉκ° μμ μ μλ‘ μ£Όμ΄μ§λ©°, κ°λ‘μμ μμΉλ₯Ό λνλ΄λ μ μλ 1,000,000,000 μ΄νμ΄λ€. κ°λ‘μμ μμΉλ₯Ό λνλ΄λ μ μλ λͺ¨λ λ€λ₯΄κ³ , Nκ°μ κ°λ‘μλ κΈ°μ€μ μΌλ‘λΆν° λ¨μ΄μ§ κ±°λ¦¬κ° κ°κΉμ΄ μμλλ‘ μ£Όμ΄μ§λ€.
μΆλ ₯ |
λͺ¨λ κ°λ‘μκ° κ°μ κ°κ²©μ΄ λλλ‘ μλ‘ μ¬μ΄μΌ νλ κ°λ‘μμ μ΅μμλ₯Ό 첫 λ²μ§Έ μ€μ μΆλ ₯νλ€.
νμ΄ |
κ°λ‘μ μ¬μ΄ κ°κ²©μ ꡬνλ€. ν κ°κ²© κ°λ€μ μ΅λ곡μ½μλ₯Ό ꡬν ν κ°κ²©κ³Ό μ΅λ곡μ½μλ₯Ό λλ κ°μμ 1μ λΉΌ κ°κ²© μ¬μ΄μ λ€μ΄κ° μ μλ κ°λ‘μ κ°―μλ₯Ό ꡬνλ€.
λ΅μ |
fun main() { val N = readLine()!!.toInt() val treeList = mutableListOf<Long>() repeat(N) { treeList.add(readLine()!!.toLong()) } val distanceList = mutableListOf<Long>() for (i in 1 until N) { distanceList.add(treeList[i] - treeList[i - 1]) } var gcdResult = distanceList[0] for (i in 1 until distanceList.size) { gcdResult = gcd(gcdResult, distanceList[i]) } var result = 0L for (i in 1 until N) { result += (treeList[i] - treeList[i - 1]) / gcdResult - 1 } println(result) } fun gcd(a: Long, b: Long): Long { return if (b == 0L) a else gcd(b, a % b) }
λ°μν'π Algorithm > π λ°±μ€' μΉ΄ν κ³ λ¦¬μ λ€λ₯Έ κΈ
Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 1929 λ² (0) 2024.03.13 Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 4134 λ² (0) 2024.03.12 Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 1735 λ² (0) 2024.03.10 Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 13241 λ² (0) 2024.03.09 Kotlin π¬ λ°±μ€ 15λ¨κ³ :: 1934 λ² (0) 2024.03.08