結果
| 問題 | 
                            No.16 累乗の加算
                             | 
                    
| コンテスト | |
| ユーザー | 
                             バカらっく
                         | 
                    
| 提出日時 | 2019-09-01 06:15:19 | 
| 言語 | Kotlin  (2.1.0)  | 
                    
| 結果 | 
                             
                                TLE
                                 
                             
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 598 bytes | 
| コンパイル時間 | 12,442 ms | 
| コンパイル使用メモリ | 440,068 KB | 
| 実行使用メモリ | 881,660 KB | 
| 最終ジャッジ日時 | 2024-11-27 06:58:26 | 
| 合計ジャッジ時間 | 105,055 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge1 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 2 TLE * 9 MLE * 3 | 
コンパイルメッセージ
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() }
           ^
Main.kt:7:27: warning: unnecessary non-null assertion (!!) on a non-null receiver of type Int
    for(i in 0..list.max()!!) {
                          ^
            
            ソースコード
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() }
    for(i in 0..list.max()!!) {
        getPow(i)
    }
    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 }
    val ans = (getPow(pow-1) * basePow) % div
    dic[pow] = ans
    return ans
}
            
            
            
        
            
バカらっく