結果
問題 | No.635 自然門松列 |
ユーザー | 37zigen |
提出日時 | 2020-04-06 04:33:15 |
言語 | Java21 (openjdk 21) |
結果 |
AC
|
実行時間 | 77 ms / 650 ms |
コード長 | 3,350 bytes |
コンパイル時間 | 2,320 ms |
コンパイル使用メモリ | 78,236 KB |
実行使用メモリ | 38,044 KB |
最終ジャッジ日時 | 2024-07-05 06:15:34 |
合計ジャッジ時間 | 4,711 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 51 ms
36,908 KB |
testcase_01 | AC | 51 ms
36,872 KB |
testcase_02 | AC | 54 ms
36,672 KB |
testcase_03 | AC | 62 ms
36,808 KB |
testcase_04 | AC | 59 ms
37,012 KB |
testcase_05 | AC | 76 ms
37,420 KB |
testcase_06 | AC | 69 ms
37,812 KB |
testcase_07 | AC | 68 ms
37,532 KB |
testcase_08 | AC | 54 ms
37,176 KB |
testcase_09 | AC | 55 ms
37,000 KB |
testcase_10 | AC | 68 ms
37,504 KB |
testcase_11 | AC | 67 ms
38,044 KB |
testcase_12 | AC | 68 ms
37,728 KB |
testcase_13 | AC | 67 ms
37,744 KB |
testcase_14 | AC | 66 ms
37,676 KB |
testcase_15 | AC | 51 ms
36,976 KB |
testcase_16 | AC | 49 ms
36,772 KB |
testcase_17 | AC | 66 ms
37,468 KB |
testcase_18 | AC | 67 ms
37,812 KB |
testcase_19 | AC | 67 ms
37,736 KB |
testcase_20 | AC | 69 ms
38,032 KB |
testcase_21 | AC | 77 ms
37,460 KB |
testcase_22 | AC | 67 ms
37,748 KB |
testcase_23 | AC | 67 ms
37,804 KB |
ソースコード
import java.io.IOException; import java.io.InputStream; import java.util.Arrays; import java.util.NoSuchElementException; public class Main implements Runnable{ public static void main(String[] args) { new Thread(null,new Main(), "" ,Runtime.getRuntime().maxMemory()).start(); } boolean is_kadomatsu(long a,long b,long c) { return a!=b&&b!=c&&c!=a&&(b==Math.min(a, Math.min(b, c))||b==Math.max(a, Math.max(b, c))); } public void run() { FastScanner sc=new FastScanner(); int N=sc.nextInt(); while(N-->0) { long[] b=new long[3]; long[] a=new long[3]; for(int i=0;i<3;++i)b[i]=sc.nextInt(); for(int i=0;i<3;++i)a[i]=sc.nextInt(); if(b[0]>b[2]) { b[0]^=b[2];b[2]^=b[0];b[0]^=b[2]; a[0]^=a[2];a[2]^=a[0];a[0]^=a[2]; } boolean ans=false; ans|=is_kadomatsu(b[0], b[1], b[2]);//始状態 ans|=is_kadomatsu(b[0]+(a[0]<<32), b[1]+(a[1]<<32), b[2]+(a[2]<<32));//終状態 b[0]-=b[1]; b[2]-=b[1]; b[1]-=b[1]; a[0]-=a[1]; a[2]-=a[1]; a[1]-=a[1]; if(a[0]>=0&&a[2]<=0&&b[0]<=0&&b[2]>=0) { ans|=a[0]*b[2]!=a[2]*b[0]; } ans|=b[0]==b[2]&&b[0]!=0&&a[0]!=a[2]; System.out.println(ans?"YES":"NO"); } } void tr(Object...objects) {System.out.println(Arrays.deepToString(objects));} } class FastScanner { private final InputStream in = System.in; private final byte[] buffer = new byte[1024]; private int ptr = 0; private int buflen = 0; private boolean hasNextByte() { if (ptr < buflen) { return true; }else{ ptr = 0; try { buflen = in.read(buffer); } catch (IOException e) { e.printStackTrace(); } if (buflen <= 0) { return false; } } return true; } private int readByte() { if (hasNextByte()) return buffer[ptr++]; else return -1;} private static boolean isPrintableChar(int c) { return 33 <= c && c <= 126;} public boolean hasNext() { while(hasNextByte() && !isPrintableChar(buffer[ptr])) ptr++; return hasNextByte();} public String next() { if (!hasNext()) throw new NoSuchElementException(); StringBuilder sb = new StringBuilder(); int b = readByte(); while(isPrintableChar(b)) { sb.appendCodePoint(b); b = readByte(); } return sb.toString(); } public long nextLong() { if (!hasNext()) throw new NoSuchElementException(); long n = 0; boolean minus = false; int b = readByte(); if (b == '-') { minus = true; b = readByte(); } if (b < '0' || '9' < b) { throw new NumberFormatException(); } while(true){ if ('0' <= b && b <= '9') { n *= 10; n += b - '0'; }else if(b == -1 || !isPrintableChar(b)){ return minus ? -n : n; }else{ throw new NumberFormatException(); } b = readByte(); } } public int nextInt() { long nl = nextLong(); if (nl < Integer.MIN_VALUE || nl > Integer.MAX_VALUE) throw new NumberFormatException(); return (int) nl; } public double nextDouble() { return Double.parseDouble(next());} }