买铅笔(洛谷-P1909)
生活随笔
收集整理的這篇文章主要介紹了
买铅笔(洛谷-P1909)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述
P老師需要去商店買n支鉛筆作為小朋友們參加NOIP的禮物。她發現商店一共有 3種包裝的鉛筆,不同包裝內的鉛筆數量有可能不同,價格也有可能不同。為了公平起 見,P老師決定只買同一種包裝的鉛筆。
商店不允許將鉛筆的包裝拆開,因此P老師可能需要購買超過n支鉛筆才夠給小朋 友們發禮物。
現在P老師想知道,在商店每種包裝的數量都足夠的情況下,要買夠至少n支鉛筆*最少*需要花費多少錢。
輸入輸出格式
輸入格式:
輸入的第一行包含一個正整數n,表示需要的鉛筆數量。
接下來三行,每行用兩個正整數描述一種包裝的鉛筆:其中第一個整數表示這種 包裝內鉛筆的數量,第二個整數表示這種包裝的價格。
保證所有的7個數都是不超過10000的正整數。
輸出格式:
輸出一行一個整數,表示P老師最少需要花費的錢。
輸入輸出樣例
輸入樣例#1:?
57
2 2
50 30
30 27
輸出樣例#1:?
5 4
輸入樣例#2:?
9998
128 233
128 2333
128 666
輸出樣例#2:?
1840
7
輸入樣例#3:?
9999
101 1111
1 9999
1111 9999
輸出樣例#3:?
899
源代碼
#include <iostream> using namespace std; int main() {int need,num,price,total,min;int i;cin>>need;cin>>num>>price;if(need%num==0) total=(need/num)*price;//需要數與包裝數恰好相等時的價格else total=(need/num)*price+price;//需要數與包裝數不等時的價格min=total;//第一種包裝花費的錢數for(i=1;i<3;i++)//計算另外兩種方案所需的價格{cin>>num>>price;if(need%num==0) total=(need/num)*price;else total=(need/num)*price+price;if(min>total) min=total;//如果當前的花費比第一種小,令花費數等于當前的錢數}cout<<min<<endl;return 0; }?
總結
以上是生活随笔為你收集整理的买铅笔(洛谷-P1909)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信息学奥赛C++语言:短信计费
- 下一篇: 信息学奥赛C++语言:枪声问题