結果

問題 No.653 E869120 and Lucky Numbers
コンテスト
ユーザー バカらっく
提出日時 2019-08-24 17:41:07
言語 Kotlin
(2.3.20)
コンパイル:
kotlinc _filename_ -include-runtime -d main.jar
実行:
kotlin main.jar
結果
AC  
実行時間 250 ms / 2,000 ms
コード長 792 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 9,751 ms
コンパイル使用メモリ 471,896 KB
実行使用メモリ 57,196 KB
最終ジャッジ日時 2026-04-04 06:57:08
合計ジャッジ時間 17,983 ms
ジャッジサーバーID
(参考情報)
judge4_0 / judge2_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 31
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

fun main(args: Array<String>){
    val arr = readLine()!!.map { Integer.parseInt(it.toString()) }.reversed().toTypedArray()
    val ans = if(getAns(arr)) "Yes" else "No"
    println(ans)
}

fun getAns(list:Array<Int>):Boolean {
    if(list.size <= 1) {
        return false;
    }
    var nums = list.toMutableList()
    while (nums.size > 1) {
        if(nums[0] in 6..7) {
            return list.size > nums.size && nums.all { it in 6..7 }
        }
        if(nums[0] < 2 || nums[0] > 4) {
            return false
        }
        nums.removeAt(0)
        for(i in nums.indices) {
            if(nums[i] > 0) {
                nums[i] -= 1
                break
            } else{
                nums[i] = 9
            }
        }
    }
    return (nums[0] in 6..7) || nums[0] == 0
}
0