結果

問題 No.1048 Zero (Advanced)
ユーザー watarimaycry2watarimaycry2
提出日時 2020-05-08 22:51:57
言語 Java21
(openjdk 21)
結果
AC  
実行時間 56 ms / 2,000 ms
コード長 3,451 bytes
コンパイル時間 2,173 ms
コンパイル使用メモリ 78,416 KB
実行使用メモリ 50,556 KB
最終ジャッジ日時 2024-07-04 01:05:58
合計ジャッジ時間 4,151 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 55 ms
50,536 KB
testcase_01 AC 54 ms
50,264 KB
testcase_02 AC 55 ms
50,296 KB
testcase_03 AC 54 ms
50,424 KB
testcase_04 AC 55 ms
50,416 KB
testcase_05 AC 56 ms
50,468 KB
testcase_06 AC 55 ms
50,232 KB
testcase_07 AC 54 ms
50,208 KB
testcase_08 AC 55 ms
50,388 KB
testcase_09 AC 54 ms
50,416 KB
testcase_10 AC 54 ms
50,080 KB
testcase_11 AC 54 ms
50,328 KB
testcase_12 AC 54 ms
50,344 KB
testcase_13 AC 54 ms
50,556 KB
testcase_14 AC 56 ms
50,472 KB
testcase_15 AC 55 ms
50,516 KB
testcase_16 AC 53 ms
50,108 KB
testcase_17 AC 55 ms
49,940 KB
testcase_18 AC 54 ms
50,160 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.*;
import java.io.*;
public class Main {
        static public class InputIterator{
          ArrayList<String> inputLine = new ArrayList<String>(1024);
          int index = 0;
          int max;
          InputIterator(){
            BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
            while(true){
              String read;
              try{
                read = br.readLine();
              }catch(IOException e){
                read = null;
              }
              if(read != null){
                inputLine.add(read);
              }else{
                break;
              }
            }
            max = inputLine.size();
          }
          public boolean hasNext(){return (index < max);}
          public String next(){
            if(hasNext()){
              String returnStr = inputLine.get(index);
              index++;
              return returnStr;
            }else{
              throw new IndexOutOfBoundsException("これ以上入力はないよ。");
            }
          }
        }
        
        static InputIterator ii = new InputIterator(); 
        static void myout(Object t){System.out.println(t);}//standard output
        static void myerr(Object t){System.err.println(t);}//standard error
        static String next(){return ii.next();}
        static int nextInt(){return Integer.parseInt(next());}
        static long nextLong(){return Long.parseLong(next());}
        static String[] nextStrArray(){return next().split(" ");}
        static ArrayList<Integer> nextIntArray(){
          ArrayList<Integer> ret = new ArrayList<Integer>();
          String[] input = nextStrArray();
          for(int i = 0; i < input.length; i++){
            ret.add(Integer.parseInt(input[i]));
          }
          return ret;
        }
        static ArrayList<Long> nextLongArray(){
          ArrayList<Long> ret = new ArrayList<Long>();
          String[] input = nextStrArray();
          for(int i = 0; i < input.length; i++){
            ret.add(Long.parseLong(input[i]));
          }
          return ret;
        }
        static char[] nextCharArray(){return mySplit(next());}
        static char[] mySplit(String str){return str.toCharArray();}
        static String kaigyoToStr(String[] list){return String.join("\n",list);}
        static String kaigyoToStr(ArrayList<String> list){return String.join("\n",list);}
        static String hanSpToStr(String[] list){return String.join(" ",list);}
        static String hanSpToStr(ArrayList<String> list){return String.join(" ",list);}
        public static void main(String[] args){
          ArrayList<Long> tmp = nextLongArray();
          long L = tmp.get(0);
          long R = tmp.get(1);
          long M = tmp.get(2);
          long K = tmp.get(3);
          if(K == 0 || M == 1 || L == 0){
		    myout("Yes");
		    return;
	      }
          long maxL = L * K;
          long maxR = R * K;
          if(maxR - maxL > M){
            myout("Yes");
          }else{
            maxL %= M;
            maxR %= M;
            if(maxL > maxR){
              myout("Yes");
            }else if(maxL == maxR && maxL == 0){
              myout("Yes");
            }else if(maxL == 0 || maxR == 0){
              myout("Yes");
            }else{
              myout("No");
            }
          }
          
        }
        //Method addition frame start

        //Method addition frame end
}
0