結果

問題 No.116 門松列(1)
コンテスト
ユーザー komkomh
提出日時 2019-06-05 10:51:11
言語 Kotlin
(2.3.20)
コンパイル:
kotlinc _filename_ -include-runtime -d main.jar
実行:
kotlin main.jar
結果
AC  
実行時間 194 ms / 5,000 ms
コード長 849 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 8,753 ms
コンパイル使用メモリ 463,388 KB
実行使用メモリ 53,096 KB
最終ジャッジ日時 2026-05-14 22:07:53
合計ジャッジ時間 14,431 ms
ジャッジサーバーID
(参考情報)
judge1_1 / judge3_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 21
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

package yukicoder

fun main() {
    val N = readLine()!!.toInt()
    val A = readLine()!!.split(" ").map(String::toInt)

    var count = 0
    for (index in (1 until A.size - 1)) {
        // 門松を生成する
        val kadomatsu = Triple(A[index - 1], A[index], A[index + 1])

        // 同じ高さがない事
        if (kadomatsu.first == kadomatsu.second
            || kadomatsu.second == kadomatsu.third
            || kadomatsu.first == kadomatsu.third
        ) {
            continue
        }

        // 真ん中の高さが2番目でない事
        if (kadomatsu.first > kadomatsu.second && kadomatsu.second > kadomatsu.third) {
            continue
        }
        if (kadomatsu.first < kadomatsu.second && kadomatsu.second < kadomatsu.third) {
            continue
        }
        count++
    }

    print("${count}")
}
0