結果

問題 No.647 明太子
ユーザー iwltwm
提出日時 2018-03-08 20:49:16
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 41 ms / 4,500 ms
コード長 1,024 bytes
コンパイル時間 537 ms
コンパイル使用メモリ 65,360 KB
実行使用メモリ 5,376 KB
最終ジャッジ日時 2024-06-27 02:49:05
合計ジャッジ時間 1,545 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 20
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <iostream>
using namespace std;

int main(void) {
	int i,j;
	int N;                //人数(~10000)
	int A[10000];         //i番目の人が支払える上限
	int B[10000];         //i番目の人の求める辛さの下限
	int M;                //売っている明太子の種類(~1000)
	int X[1000];          //j番の明太子の値段
	int Y[1000];          //j番の明太子の辛さ
	int kounyu[1000] = {};//j番の明太子が購入された数
	
	//初期化
	cin >> N;
	for (i = 0;i < N;i++)
		cin >> A[i] >> B[i];
	cin >> M;
	for (j = 0;j < M;j++)
		cin >> X[j] >> Y[j];
	
	//買うものを決める
	for (i = 0;i < N;i++)
		for (j = 0;j < M;j++)
			if(A[i] >= X[j] && B[i] <= Y[j])
				kounyu[j]++;
	
	//「奇跡の明太子」はいくつ買われたのか調べる
	int max = 0;
	for (j = 0;j < M;j++)
		if (kounyu[j] > max)
			max = kounyu[j];
	
	//「出力」
	if (max == 0) {
		cout << 0 << endl;
	} else { 
		for (j = 0;j < M;j++)
			if (kounyu[j] == max)
				cout << (j + 1) << endl;
	}
}
0