Submission #1352141


Source Code Expand

import java.util.*;

public class Main {    
    public static void main(String[] args){        
        Scanner sc = new Scanner(System.in);                
                      
        int N = sc.nextInt();
        int M = sc.nextInt();
        int X = sc.nextInt();
        int Y = sc.nextInt();        
        
        int a[] = new int[N];
        int b[] = new int[M];
        
        for(int i = 0;i < N;i++){
            a[i] = sc.nextInt();
        }
        
        for(int j = 0;j < M;j++){
            b[j] = sc.nextInt();
        }
        
        int time = 0;                
        int airport = 0;                
        int ans = 0;
        
        while(true){                                                                                                 
          if(airport == 0){              
             int l = 0;
             int r = N;             
             int pos = -1;
             while(l < r){
                 int mid = (l + r)/2;
                 if(a[mid] >= time){
                     pos = mid;
                     r   = mid;
                 }else{
                     l   = mid + 1;
                 }                                  
             }                                       
             if(pos != -1){
                 time = a[pos] + X; 
                 airport = 1;                 
             }else{
                 break;
             }
          }else if(airport == 1){              
             int pos = -1;
             int l = 0;
             int r = M;
             while(l < r){
                 int mid = (l + r)/2;
                 if(b[mid] >= time){
                     pos = mid;
                     r   = mid;
                 }else{
                     l   = mid + 1;   
                 }                 
             }             
             if(pos != -1){
                 time = b[pos] + Y;                 
                 airport = 0;
                 ans++;
             }else{
                 break;
             }
          }                      
        }                        

        System.out.println(ans);        
        
    }   
    
    static int lower_bound(int a[],int k){
      int l = 0;
      int r = a.length;       
      
      while(l < r){
        int mid = (l + r)/2;        
        if(k <= a[mid]){
           r = mid;       
        }else{            
           l = mid + 1;
        }                
      }
      //r = l + 1;        
      return r;
    }    
         
}

Submission Info

Submission Time
Task C - 飛行機乗り
User suesue
Language Java8 (OpenJDK 1.8.0)
Score 100
Code Size 2610 Byte
Status AC
Exec Time 596 ms
Memory 66584 KB

Judge Result

Set Name Sample Subtask1 All
Score / Max Score 0 / 0 30 / 30 70 / 70
Status
AC × 3
AC × 18
AC × 33
Set Name Test Cases
Sample subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt
Subtask1 subtask0_0.txt, subtask0_1.txt, subtask0_10.txt, subtask0_11.txt, subtask0_12.txt, subtask0_13.txt, subtask0_14.txt, subtask0_2.txt, subtask0_3.txt, subtask0_4.txt, subtask0_5.txt, subtask0_6.txt, subtask0_7.txt, subtask0_8.txt, subtask0_9.txt, subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt
All subtask0_0.txt, subtask0_1.txt, subtask0_10.txt, subtask0_11.txt, subtask0_12.txt, subtask0_13.txt, subtask0_14.txt, subtask0_2.txt, subtask0_3.txt, subtask0_4.txt, subtask0_5.txt, subtask0_6.txt, subtask0_7.txt, subtask0_8.txt, subtask0_9.txt, subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask1_0.txt, subtask1_1.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_2.txt, subtask1_3.txt, subtask1_4.txt, subtask1_5.txt, subtask1_6.txt, subtask1_7.txt, subtask1_8.txt, subtask1_9.txt
Case Name Status Exec Time Memory
subtask0_0.txt AC 522 ms 63544 KB
subtask0_1.txt AC 421 ms 50568 KB
subtask0_10.txt AC 463 ms 57480 KB
subtask0_11.txt AC 475 ms 61420 KB
subtask0_12.txt AC 492 ms 64048 KB
subtask0_13.txt AC 444 ms 60832 KB
subtask0_14.txt AC 473 ms 62292 KB
subtask0_2.txt AC 457 ms 62916 KB
subtask0_3.txt AC 519 ms 64176 KB
subtask0_4.txt AC 472 ms 63192 KB
subtask0_5.txt AC 414 ms 47972 KB
subtask0_6.txt AC 511 ms 63052 KB
subtask0_7.txt AC 458 ms 58748 KB
subtask0_8.txt AC 421 ms 47648 KB
subtask0_9.txt AC 517 ms 63044 KB
subtask0_sample_01.txt AC 93 ms 20052 KB
subtask0_sample_02.txt AC 104 ms 19924 KB
subtask0_sample_03.txt AC 93 ms 21716 KB
subtask1_0.txt AC 596 ms 57952 KB
subtask1_1.txt AC 553 ms 60656 KB
subtask1_10.txt AC 465 ms 54432 KB
subtask1_11.txt AC 512 ms 59364 KB
subtask1_12.txt AC 536 ms 64316 KB
subtask1_13.txt AC 554 ms 66584 KB
subtask1_14.txt AC 499 ms 60832 KB
subtask1_2.txt AC 563 ms 63664 KB
subtask1_3.txt AC 543 ms 61456 KB
subtask1_4.txt AC 530 ms 60744 KB
subtask1_5.txt AC 520 ms 59888 KB
subtask1_6.txt AC 525 ms 60944 KB
subtask1_7.txt AC 499 ms 62596 KB
subtask1_8.txt AC 533 ms 59364 KB
subtask1_9.txt AC 590 ms 64180 KB