結果
問題 | No.16 累乗の加算 |
ユーザー |
![]() |
提出日時 | 2019-09-01 06:18:51 |
言語 | Kotlin (2.1.0) |
結果 |
AC
|
実行時間 | 377 ms / 5,000 ms |
コード長 | 616 bytes |
コンパイル時間 | 13,103 ms |
コンパイル使用メモリ | 438,352 KB |
実行使用メモリ | 52,012 KB |
最終ジャッジ日時 | 2024-11-27 07:05:09 |
合計ジャッジ時間 | 18,147 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 14 |
コンパイルメッセージ
Main.kt:3:10: warning: parameter 'args' is never used fun main(args: Array<String>) { ^ Main.kt:4:12: warning: variable 'b' is never used val (a,b) = readLine()!!.split(" ").map { it.toInt() } ^
ソースコード
import java.lang.StringBuilder fun main(args: Array<String>) { val (a,b) = readLine()!!.split(" ").map { it.toInt() } basePow = a val list = readLine()!!.split(" ").map { it.toInt() } val ans = list.map { getPow(it) }.reduce { acc, l -> acc + l } % div println(ans) } var basePow = 2 val div = 1000003 val dic = mutableMapOf<Int, Long>() fun getPow(pow:Int):Long { if(pow == 0) { return 1 } dic[pow]?.let { return it } var ans = getPow(pow/2) ans = (ans * ans) % div if(pow % 2 > 0) { ans = (ans * basePow) % div } dic[pow] = ans return ans }