結果
| 問題 |
No.116 門松列(1)
|
| ユーザー |
|
| 提出日時 | 2018-03-25 21:07:09 |
| 言語 | Kotlin (2.1.0) |
| 結果 |
AC
|
| 実行時間 | 329 ms / 5,000 ms |
| コード長 | 991 bytes |
| コンパイル時間 | 12,295 ms |
| コンパイル使用メモリ | 439,940 KB |
| 実行使用メモリ | 51,956 KB |
| 最終ジャッジ日時 | 2024-11-20 14:53:00 |
| 合計ジャッジ時間 | 20,840 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 21 |
コンパイルメッセージ
Main.kt:6:10: warning: parameter 'args' is never used
fun main(args: Array<String>) {
^
ソースコード
package yukicoder.no116
/**
* エントリポイント
*/
fun main(args: Array<String>) {
val in1 = readLine()
val in2 = readLine()
print(pineDecoration(in1, in2))
}
/**
* 門松列になっている数を返します。
* @param bambooNum 竹の数
* @param bambooHeights それぞれの竹の長さ
*/
fun pineDecoration(@Suppress("UNUSED_PARAMETER") bambooNum: String?,
bambooHeights: String?): String {
if (bambooHeights == null) {
return ""
}
var count = 0
val sp = bambooHeights.split(" ").map { it.toInt() }
for (i in 1..(sp.size - 2)) {
// すべて違う高さ
if (sp[i - 1] == sp[i] || sp[i - 1] == sp[i + 1] || sp[i] == sp[i + 1]) {
continue
}
// 中央が2番目の高さではない
if ((sp[i - 1] > sp[i] && sp[i] > sp[i + 1]) || (sp[i - 1] < sp[i] && sp[i] < sp[i + 1])) {
continue
}
count++
}
return count.toString()
}