NOIP2016普及組複賽第一題ACC程式加題解pascal———買鉛筆
NOIP2016普及組複賽第一題ACC程式加題解pascal
第一題:
題目描述
P老師需要去商店買n支鉛筆作為小朋友們參加NOIP的禮物。她發現商店一共有 3種包裝的鉛筆,不同包裝內的鉛筆數量有可能不同,價格也有可能不同。為了公平起見,P老師決定只買同一種包裝的鉛筆。
商店不允許將鉛筆的包裝拆開,因此P老師可能需要購買超過n支鉛筆才夠給小朋友們發禮物。
現在P老師想知道,在商店每種包裝的數量都足夠的情況下,要買夠至少n支鉛筆最少需要花費多少錢。
var
i,j,k,m,x,y:longint; //i,j,k:迴圈變數,為什麼有這麼多?個人喜好!!!!!!x:一套鉛筆的個數y:一套鉛筆的價格。
max,n:int64;
begin
assign(input,'pencil.in');
assign(output,'pencil.out');
reset(input);
rewrite(output);//檔案格式輸入輸出。
readln(m);//P老師要多少隻鉛筆。
max:= maxlongint;//P老師最少花多少錢。
for i:=1 to 3 do//有三種鉛筆。
begin
read(x,y);//輸入
if x<>0 then begin
n:=m div x;//要買多少套。
if m mod x<>0//
then n:=n+1;
n:=n*y;//N套要多少錢。
if n<max//是否少於上一套的錢數。
then max:=n;//是的話就賦值給MAX。
end;
end;
writeln(max);//輸出最少花多少錢。
close(input);
close(output);
end.