結果
| 問題 |
No.360 増加門松列
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-05-04 17:13:38 |
| 言語 | Java (openjdk 23) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,258 bytes |
| コンパイル時間 | 1,950 ms |
| コンパイル使用メモリ | 79,000 KB |
| 実行使用メモリ | 55,532 KB |
| 最終ジャッジ日時 | 2024-10-05 06:35:55 |
| 合計ジャッジ時間 | 5,086 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 15 WA * 7 |
ソースコード
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String[] input = new String[1];
int i = 0;
while (sc.hasNext()) {
input[i] = sc.nextLine();
i++;
}
String[] d = input[0].split(" ");
int[] dl = new int[d.length];
for (i = 0; i < d.length; i++) {
dl[i] = Integer.valueOf(d[i]);
}
System.out.println(solve(dl));
sc.close();
}
public static String solve(int[] d) {
boolean result = false;
Arrays.sort(d);
int[] c1 = Arrays.copyOfRange(d, 0, d.length);
int[] c2 = Arrays.copyOfRange(d, 0, d.length);
swap(c1, 0, 1);
swap(c1, 2, 3);
swap(c1, 4, 4);
swap(c2, 1, 2);
swap(c2, 3, 4);
swap(c2, 5, 6);
result = isMatch(c1) || isMatch(c2);
return result ? "YES" : "NO";
}
private static boolean isMatch(int[] c) {
for (int i = 0; i + 2 < c.length; i++) {
if (c[0] == c[1] || c[1] == c[2] || c[2] == c[0]) {
return false;
}
if (c[0] > c[2]) {
return false;
}
if ((c[0] < c[1] && c[1] < c[2]) || (c[2] < c[1] && c[1] < c[0])) {
return false;
}
}
return true;
}
private static void swap(int[] c, int i, int j) {
int tmp = c[i];
c[i] = c[j];
c[j] = tmp;
}
}