結果
| 問題 |
No.842 初詣
|
| コンテスト | |
| ユーザー |
14番
|
| 提出日時 | 2022-07-06 10:41:21 |
| 言語 | Kotlin (2.1.0) |
| 結果 |
AC
|
| 実行時間 | 354 ms / 2,000 ms |
| コード長 | 737 bytes |
| コンパイル時間 | 15,118 ms |
| コンパイル使用メモリ | 437,736 KB |
| 実行使用メモリ | 55,404 KB |
| 最終ジャッジ日時 | 2024-12-21 07:24:13 |
| 合計ジャッジ時間 | 21,987 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 21 |
コンパイルメッセージ
Main.kt:1:10: warning: parameter 'args' is never used
fun main(args: Array<String>) {
^
ソースコード
fun main(args: Array<String>) {
val inpt = readLine()!!.split(" ").map { it.toInt() }
var remain = inpt.last()
val coins = inpt.dropLast(1).toIntArray()
println(if(Solve(remain,coins).getAns()) "YES" else "NO")
}
class Solve(private val amount:Int, private val coins:IntArray) {
private val coinType = listOf(500,100,50,10,5,1)
fun getAns():Boolean {
return getAns(0, amount)
}
private fun getAns(index:Int, remain:Int):Boolean {
if(remain == 0) {
return true
}
if(index > coins.lastIndex) {
return false
}
val cnt = Math.min(remain/coinType[index], coins[index])
return getAns(index+1, remain - cnt*coinType[index])
}
}
14番