結果

問題 No.647 明太子
ユーザー fal_rndfal_rnd
提出日時 2018-02-12 17:55:41
言語 Java21
(openjdk 21)
結果
AC  
実行時間 624 ms / 4,500 ms
コード長 798 bytes
コンパイル時間 2,918 ms
コンパイル使用メモリ 87,496 KB
実行使用メモリ 48,636 KB
最終ジャッジ日時 2024-06-27 02:42:07
合計ジャッジ時間 10,276 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 133 ms
41,272 KB
testcase_01 AC 135 ms
41,740 KB
testcase_02 AC 131 ms
41,612 KB
testcase_03 AC 130 ms
40,980 KB
testcase_04 AC 139 ms
41,460 KB
testcase_05 AC 119 ms
39,844 KB
testcase_06 AC 139 ms
41,748 KB
testcase_07 AC 149 ms
41,600 KB
testcase_08 AC 145 ms
41,936 KB
testcase_09 AC 217 ms
43,404 KB
testcase_10 AC 231 ms
44,008 KB
testcase_11 AC 213 ms
43,120 KB
testcase_12 AC 220 ms
43,956 KB
testcase_13 AC 256 ms
44,916 KB
testcase_14 AC 559 ms
48,636 KB
testcase_15 AC 275 ms
45,916 KB
testcase_16 AC 231 ms
43,560 KB
testcase_17 AC 569 ms
48,408 KB
testcase_18 AC 624 ms
48,596 KB
testcase_19 AC 440 ms
48,368 KB
testcase_20 AC 396 ms
47,968 KB
testcase_21 AC 317 ms
47,800 KB
testcase_22 AC 445 ms
47,240 KB
testcase_23 AC 206 ms
42,364 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.*;
import java.util.stream.*;

class A{
	static class Person{
		int cost,hot;
		Person(int c,int h){
			this.cost=c;
			this.hot=h;
		}
		boolean isMatch(int v,int h) {
			return cost>=v&&hot<=h;
		}
	}
	public static void main(String[]$){
		Scanner s=new Scanner(System.in);
		int n=s.nextInt();
		Person[]p=IntStream.range(0,n)
				.mapToObj(i->new Person(s.nextInt(),s.nextInt()))
				.toArray(Person[]::new);
		int m=s.nextInt();

		ArrayList<Integer>l=new ArrayList<>();
		l.add(0);
		long max=0;
		for(int i=1;i<=m;++i) {
			int x=s.nextInt(),y=s.nextInt();
			long v=Arrays.stream(p)
					.filter(o->o.isMatch(x,y))
					.count();
			if(max<v) {
				max=v;
				l.clear();
				l.add(i);
			}else if(v>0&&max==v) {
				l.add(i);
			}
		}
		l.forEach(System.out::println);
	}
}
0