最便宜買鉛筆方案

2021-08-28 15:08:03 字數 1008 閱讀 9587

題目描述

p老師需要去商店買n支鉛筆作為小朋友們參加noip的禮物。她發現商店一共有 33種包裝的鉛筆,不同包裝內的鉛筆數量有可能不同,**也有可能不同。為了公平起 見,p老師決定只買同一種包裝的鉛筆。

商店不允許將鉛筆的包裝拆開,因此p老師可能需要購買超過nn支鉛筆才夠給小朋 友們發禮物。

現在p老師想知道,在商店每種包裝的數量都足夠的情況下,要買夠至少nn支鉛筆最少需要花費多少錢。

輸入輸出格式

輸入格式:

第一行包含乙個正整數nn,表示需要的鉛筆數量。

接下來三行,每行用22個正整數描述一種包裝的鉛筆:其中第11個整數表示這種 包裝內鉛筆的數量,第22個整數表示這種包裝的**。

保證所有的77個數都是不超過1000010000的正整數。

輸出格式:

11個整數,表示p老師最少需要花費的錢。

輸入輸出樣例

輸入樣例#1: 複製

572 2

50 30

30 27

輸出樣例#1: 複製

54

#includeint main()

for(int j=0;j<3;j++)

else

sum=b[j]*(n/a[j]+1);

if(min==0)

else if(min>sum)

} printf("%d",min);

return 0;

}

在這裡定義了兩個陣列分別來儲存每一組資料,第乙個for迴圈用來給輸入資料

接下來的for迴圈是用來判定sum的最小值的,先求出sum,按題意鉛筆的數目只能多不能少,所以用求余先判定是否整除,若整除就用除法計算出應該買多少盒鉛筆,若不整除就在原基礎上多加一即可。

最後用了兩個if第乙個if只是單純為了給min賦值,下面的乙個if才是為了比較大小最後輸出最小的那個sum值。

該題目不難,屬於一眼就看過去就有思路的那種。關鍵是後來由於自己的程式設計能力有限,所以在整個過程中也屬於有點掙扎的,還好及時反應過來了。

購書最便宜的方案

include using namespace std void lowestprice int n cout 書的最低 是 void main 題目 書店針對 哈利波特 系列書籍進行 活動,一共5卷,用編號0 1 2 3 4表示,單獨一捲售價8元,具體折扣如下所示 本數 折扣 2 5 3 10 4...

買鉛筆 演算法競賽

時間限制 c c 1秒,其他語言2秒 空間限制 c c 262144k,其他語言524288k 64bit io format lld 題目描述 p老師需要去商店買n支鉛筆作為小朋友們參加noip的禮物。她發現商店一共有 3 種包裝的鉛筆,不同包裝內的鉛筆數量有可能不同,也有可能不同。為了公平起見,...

牛客16437 買鉛筆

題目描述 p老師需要去商店買n支鉛筆作為小朋友們參加noip的禮物。她發現商店一共有 3 種包裝的鉛筆,不同包裝內的鉛筆數量有可能不同,也有可能不同。為了公平起見,p老師決定只買同一種包裝的鉛筆。商店不允許將鉛筆的包裝拆開,因此p老師可能需要購買超過 n 支鉛筆才夠給小朋友們發禮物。現在p老師想知道...