description
alice和bob在玩乙個遊戲,每一輪bob都會給alice兩個整數a和b(1<=a,b<=100),alice每一輪必須把目前所有的a序列和b序列中的數一一配對,每個數必須用且只使用一次,要求最大和最小。
題解數值大小比較小,用乙個陣列統計,再用桶優化,暴力~~沒了。
**
var
i,j,n,max,min,ans,x,y:longint;
a,b,p,q:array[0..110] of longint;
procedure
work;
var i,j:longint;
begin
ans:=0; j:=1;
for i:=100
downto1do
begin
if j>100
then break;
x:=p[i];
while x>0
doif x>=q[j] then
begin
if (j+i>ans)and(x<>0)and(q[j]<>0) then ans:=j+i;
dec(x,q[j]);
q[j]:=0;
inc(j);
endelse
begin
if (j+i>ans)and(x<>0)and(q[j]<>0) then ans:=j+i;
dec(q[j],x);
x:=0;
end;
end;
end;
procedure
init;
begin
readln(n);
for i:=1
to n do
begin
readln(x,y);
inc(a[x]); inc(b[y]);
p:=a; q:=b;
work;
writeln(ans);
end;
end;
begin
init;
close(input);
close(output);
end.
使用求出最大和最小ID進行分頁
1乙個bbs的分頁 23 ifexists select from sysobjects where id object id up gettopiclist 4 drop proc up gettopiclist 5go 67create proc up gettopiclist 8 a intf...
連續最大和
經典的動態規劃 乙個陣列有 n 個元素,求連續子陣列的最大和。例如 1,2,1 和最大的連續子陣列為 2,1 其和為 3 輸入為兩行。第一行乙個整數n 1 n 100000 表示一共有n個元素 第二行為n個數,即每個元素,每個整數都在32位int範圍內。以空格分隔。所有連續子陣列中和最大的值。示例1...
連續最大和
給出乙個整數序列s,其中有n個數,定義其中乙個非空連續子串行t中所有數的和為t的 序列和 對於s的所有非空連續子串行t,求最大的序列和。變數條件 n為正整數,n 1000000,結果序列和在範圍 2 63,2 63 1 以內。第一行為乙個正整數n,第二行為n個整數,表示序列中的數。輸入可能包括多組資...