結果

問題 No.360 増加門松列
ユーザー te-sh
提出日時 2017-07-12 14:02:00
言語 D
(dmd 2.109.1)
結果
AC  
実行時間 2 ms / 2,000 ms
コード長 542 bytes
コンパイル時間 782 ms
コンパイル使用メモリ 106,900 KB
実行使用メモリ 6,948 KB
最終ジャッジ日時 2024-06-12 20:53:13
合計ジャッジ時間 1,605 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 22
権限があれば一括ダウンロードができます

ソースコード

diff #

import std.algorithm, std.conv, std.range, std.stdio, std.string;

void main()
{
  auto d = readln.split.to!(int[]);
  d.sort();

  do {
    if (isIncreasingKadomatsu(d)) {
      writeln("YES");
      return;
    }
  } while (d.nextPermutation);

  writeln("NO");
}

auto isIncreasingKadomatsu(int[] d)
{
  foreach (i; 0..5)
    if (!isKadomatsu(d[i], d[i+1], d[i+2]) || d[i] > d[i+2])
      return false;

  return true;
}

auto isKadomatsu(int a, int b, int c)
{
  return a != b && b != c && c != a && (a > b && c > b || a < b && c < b);
}
0