有一批訂單記錄,數據有訂單號,入店時間,離店時間; 輸入一個時間值A,須要在這批記錄中找到符合入離店時間範圍(A大於等於入店時間,而且A小於等於離店時間)內的全部記錄。 單次查詢時間複雜度控制在O(l

import java.util.Scanner;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
public class Main{
    public static void main(String[] args)throws IOException{
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        int n = Integer.parseInt(br.readLine());
        int timeA = Integer.parseInt(br.readLine());
        //int count = 0;
        ArrayList<Integer> list = new ArrayList<>();
        for(int i = 0;i < n;i++){
            String[] str = br.readLine().split(" ");
            int orderid = Integer.parseInt(str[0]);
            int intime = Integer.parseInt(str[1]);
            int outtime = Integer.parseInt(str[2]);
            if(timeA >= intime && timeA <= outtime){
                list.add(orderid);
            }
        }
        if(list.isEmpty())
            System.out.println("null");
        else{
            Collections.sort(list);
            for(Object obj:list)
                System.out.println(obj);
        }
         
    }
}
相關文章
相關標籤/搜索