Submission
Status:
[-SSS][-SSS][-SSS][-SSS][-SSS][-SSS][-SSS][-SSS]
Score: 0
User: Jokul
Problemset: ขนมปัง
Language: c
Time: 0.002 second
Submitted On: 2025-04-02 18:54:26
#include <stdio.h>
int main() {
int w, h, m, n,result1=0,result2=0;
scanf("%d", &w);
scanf("%d", &h);
scanf("%d", &m);
scanf("%d", &n);
int a[m + 2], b[n + 2],check1[m+2],check2[n+2];
check1[0] = 0;
check2[0] = 0;
a[0] = 0;
b[0] = 0;
a[m + 1] = w;
b[n + 1] = h;
for (int i = 1; i <= m; i++) {
scanf("%d", &a[i]);
}
for (int i = 1; i <= n; i++) {
scanf("%d", &b[i]);
}
// Finding max1 and max2 for array a
int max[4]={0};
for (int i = 0; i < m + 1; i++) {
int j = i+1;
int diff = a[j] - a[i];
if (diff >=max[0]) {
max[1] = max[0];
max[0] = diff;
} else if (diff > max[1] && diff < max[0]) {
max[1] = diff;
}
}
for (int i = 0; i < n + 1; i++) {
int j = i+1;
int diff = b[j] - b[i];
if (diff >=max[2]) {
max[3] = max[2];
max[2] = diff;
} else if (diff > max[3] && diff < max[2]) {
max[3] = diff;
}
}
for(int i=2;i<4;i++)
{
for(int j=0;j<2;j++)
if(max[i]*max[j]>=result1)
{
result2=result1;
result1=max[i]*max[j];
}
else if(max[i]*max[j]>result2&&max[i]*max[j]<result1)
result2=max[i]*max[j];
}
for(int i=0;i<4;i++)
{
printf("%d ",max[i]);
}
printf("%d %d\n", result1, result2);
return 0;
}