Submission #1305883


Source Code Expand

import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {
		// TODO 自動生成されたメソッド・スタブ
		Scanner scan = new Scanner(System.in);
		int N=scan.nextInt();
		int[][] box = new int[N][2];
		for(int i=0;i<N;i++){
			box[i][0]=scan.nextInt();
			box[i][1]=scan.nextInt();
		}

		Arrays.sort(box,new ArraySort());

		final int INF = 1000000000;
		int dp[] = new int[N+1];//dp[i] = 単調増加の部分列i を作るのに最小の最後尾の数
		int dpw[] = new int[N+1];						//次の数a[i]について、dp[j]<a[i]<=dp[j+1]であればdp[j+1]=a[i]
		for(int i=0;i<N+1;i++){
			dp[i]=INF;
			dpw[i]=INF;
		}

		for(int i=0;i<N;i++){
			int result = Arrays.binarySearch(dp,box[i][1]);
			int insertionPoint = (result>=0) ? result : ~result;
				if(insertionPoint>0&&dpw[insertionPoint-1]==dpw[insertionPoint]){//同じ幅で積み重ねないように
					continue;
			}

			dp[insertionPoint] =box[i][1];
			dpw[insertionPoint] =box[i][0];
		}

		for(int i=0;i<N;i++){
			if(dp[i+1]==INF){
				System.out.println(i+1);
				break;
			}
		}


	}

}


class ArraySort implements Comparator<int[]>{
	public int compare(int[] num1,int[] num2){
		return num1[0]-num2[0];
	}
}
//O(nlog(n))

Submission Info

Submission Time
Task D - プレゼント
User inmir
Language Java8 (OpenJDK 1.8.0)
Score 30
Code Size 1348 Byte
Status WA
Exec Time 675 ms
Memory 90524 KB

Judge Result

Set Name Sample Subtask0 All
Score / Max Score 0 / 0 30 / 30 0 / 70
Status
AC × 4
AC × 19
AC × 24
WA × 10
Set Name Test Cases
Sample sample0.txt, sample1.txt, sample2.txt, sample3.txt
Subtask0 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, sample0.txt, sample1.txt, sample2.txt, sample3.txt
All sample0.txt, sample1.txt, sample2.txt, sample3.txt, 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, 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
sample0.txt AC 94 ms 18388 KB
sample1.txt AC 97 ms 23636 KB
sample2.txt AC 97 ms 19284 KB
sample3.txt AC 103 ms 19924 KB
subtask0_0.txt AC 137 ms 24148 KB
subtask0_1.txt AC 105 ms 19924 KB
subtask0_10.txt AC 151 ms 24812 KB
subtask0_11.txt AC 129 ms 21716 KB
subtask0_12.txt AC 142 ms 22996 KB
subtask0_13.txt AC 145 ms 24680 KB
subtask0_14.txt AC 148 ms 24172 KB
subtask0_2.txt AC 116 ms 18900 KB
subtask0_3.txt AC 119 ms 22356 KB
subtask0_4.txt AC 143 ms 23380 KB
subtask0_5.txt AC 118 ms 21972 KB
subtask0_6.txt AC 148 ms 25328 KB
subtask0_7.txt AC 140 ms 25300 KB
subtask0_8.txt AC 138 ms 22100 KB
subtask0_9.txt AC 135 ms 22504 KB
subtask1_0.txt WA 512 ms 62868 KB
subtask1_1.txt AC 160 ms 23824 KB
subtask1_10.txt AC 583 ms 87612 KB
subtask1_11.txt AC 565 ms 86096 KB
subtask1_12.txt WA 634 ms 82620 KB
subtask1_13.txt WA 657 ms 87140 KB
subtask1_14.txt AC 652 ms 83432 KB
subtask1_2.txt WA 329 ms 38548 KB
subtask1_3.txt WA 603 ms 64624 KB
subtask1_4.txt WA 675 ms 90524 KB
subtask1_5.txt WA 318 ms 42040 KB
subtask1_6.txt WA 581 ms 65860 KB
subtask1_7.txt WA 472 ms 58564 KB
subtask1_8.txt WA 587 ms 65616 KB
subtask1_9.txt AC 473 ms 62104 KB