Submission
Status:
[PPPP][PPPP][PPPP][-SSS][PPPP][PPPP][PPPP][PPPP]
Subtask/Task Score:
{13/13}{13/13}{13/13}{0/13}{13/13}{13/13}{13/13}{13/13}
Score: 91
User: boommmmm
Problemset: ขนมปัง
Language: cpp
Time: 0.038 second
Submitted On: 2025-10-17 10:10:34
#include <bits/stdc++.h>
using namespace std;
int main() {
int W, H, M, N;
cin >> W >> H >> M >> N;
vector<int> x(M + 2), y(N + 2);
x[0] = 0; x[M + 1] = W;
y[0] = 0; y[N + 1] = H;
for (int i = 1; i <= M; ++i) cin >> x[i];
for (int i = 1; i <= N; ++i) cin >> y[i];
sort(x.begin(), x.end());
sort(y.begin(), y.end());
vector<int> areas;
for (int i = 0; i < x.size() - 1; ++i) {
for (int j = 0; j < y.size() - 1; ++j) {
int w = x[i+1] - x[i];
int h = y[j+1] - y[j];
areas.push_back(w * h);
}
}
sort(areas.rbegin(), areas.rend()); // ?ҡ ????
int mx = areas[0];
int mx2 = -1;
for (int i = 1; i < areas.size(); ++i) {
if (areas[i] < mx) {
mx2 = areas[i];
break;
}
}
cout << mx << " " << mx2 << endl;
return 0;
}