混合牛奶pascal程序
題意
給出Marry乳業(yè)每天對牛奶的需求量,還有每位奶農(nóng)提供的牛奶單價和產(chǎn)量。計算采購足夠數(shù)量的牛奶所需的最小花費。
分析
排序,最小價值優(yōu)先取,太多了就退出循環(huán),輸出(之前的價值+還有多少需求*退出時的單價)。
var
n,m,i,j,tj:longint;
a,b:array[0..5000]of longint;
procedure kp(l,r:longint);
var
i,j,mid:longint;
begin
? ? if l>=r then exit;
? ? i:=l;j:=r;mid:=a[(l+r) div 2];
? ? repeat
? ? ? ? ?while a[i]<mid do inc(i);
? ? ? ? ?while a[j]>mid do dec(j);
? ? ? ? ?if i<=j then
? ? ? ? ?begin
? ? ? ? ? ? ?a[0]:=a[i];a[i]:=a[j];a[j]:=a[0];
? ? ? ? ? ? ?b[0]:=b[i];b[i]:=b[j];b[j]:=b[0];
? ? ? ? ? ? ?inc(i);dec(j);
? ? ? ? ?end;
? ? until i>j;
? ? kp(l,j);
? ? kp(i,r);
end;
begin
? ? readln(n,m);
? ? for i:=1 to m do
? ? readln(a[i],b[i]);
? ? kp(1,m);
? ? tj:=0;
? ? i:=1;
? ? while (i<=m)and(b[i]<=n) do
? ? begin
? ? ? ? tj:=tj+a[i]*b[i];
? ? ? ? n:=n-b[i];
? ? ? ? inc(i);
? ? end;
? ? write(tj+n*a[i]);
end.
轉(zhuǎn)載于:https://www.cnblogs.com/YYC-0304/p/9500208.html
總結(jié)
以上是生活随笔為你收集整理的混合牛奶pascal程序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 单词接龙pascal程序
- 下一篇: [USACO1.3]混合牛奶 Mixin