結果
問題 | No.152 貯金箱の消失 |
ユーザー |
![]() |
提出日時 | 2019-11-05 01:32:48 |
言語 | Kotlin (2.1.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,271 bytes |
コンパイル時間 | 17,017 ms |
コンパイル使用メモリ | 440,484 KB |
実行使用メモリ | 117,580 KB |
最終ジャッジ日時 | 2024-09-14 23:57:32 |
合計ジャッジ時間 | 21,318 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 4 TLE * 1 -- * 7 |
コンパイルメッセージ
Main.kt:3:10: warning: parameter 'arr' is never used fun main(arr:Array<String>) { ^ Main.kt:34:21: warning: variable 'keyKey' is never used val keyKey = dic[key!!*k] ^ Main.kt:34:37: warning: unnecessary non-null assertion (!!) on a non-null receiver of type Int val keyKey = dic[key!!*k] ^
ソースコード
fun main(arr:Array<String>) { val dic = mutableMapOf<Int, Int>() val himo = readLine()!!.toInt() for (i in (1..himo)) { if(i*2*4>himo) { break } dic[i*i] = i } var ans = 0 val flag = mutableMapOf<Int, MutableMap<Int, Boolean>>() for(i in dic.keys) { for(j in dic.keys.filter { it < i }) { val key = i - j if(key > j) { continue } if(!dic.containsKey(key)) { continue } if(flag.containsKey(dic[i]!!) && flag[dic[i]!!]!!.containsKey(dic[j]!!)) { continue } val requireHimo = (dic[i]!! + dic[j]!! + dic[key]!!) * 4 if(requireHimo > himo) { continue } ans++ for (k in (1..himo)) { val keyI = dic[i]!!*k val keyJ = dic[j]!!*k val keyKey = dic[key!!*k] if(!flag.containsKey(keyI)) { flag[keyI] = mutableMapOf() } if(requireHimo * k > himo) { break } flag[keyI]!![keyJ] = true } } } println(ans) }