【
输出说明】
输入解释:共有4块土地.
输出解释:FJ分3组买这些土地: 第一组:100x1, 第二组1x100, 第三组20x5 和 15x15 plot. 每组的价格分别为100,100,300, 总共500.
贪心
代码如下,自行理解吧。。
var
n,i,j:longint; sum:int64;
x,y:array[1..5000]of int64;
function max(a,b:int64):int64;
begin
if a>b then exit(a) else exit(b);
end;
begin
assign(input,'acquire.in');reset(input);
assign(output,'acquire.out');rewrite(output);
readln(n);
for i:=1 to n do
readln(x[i],y[i]);
for i:=1 to n do
for j:=1 to n do
if i<>j then
if (x[i]*y[i]+x[j]*y[j])>(max(x[i],x[j])*max(y[i],y[j])) then
begin
x[i]:=max(x[i],x[j]);
y[i]:=max(y[i],y[j]);
x[j]:=0; y[j]:=0;
end;
for i:=1 to n do
sum:=sum+x[i]*y[i];
write(sum);
close(input); close(output);
end.