題目描述
不知道是拔河訓練的作用還是那個夢的緣故,反正小x是一天天瘦下來了,雖然還沒有中天學長那麼帥,但比起 q 老師已經瘦了很多,小x原先買的衣服都嫌大了,於是他想去買些新衣服,小x的衣服原先一直是在非主流服裝店買的,他的衣服一般店裡是買不到的,而去非主流服裝店肯定能買到,如膝蓋上挖了兩個洞的牛仔褲,正常人穿了像雨衣的衝鋒衣等應有盡有,並且每買一件就送一張優惠券,小x這些年下來積聚了好多張優惠券,這次非主流服裝店恰好舉行優惠活動,用優惠券購買衣服可享受***!
小x來到了非主流服裝店,他看上了 n 件衣服,每一件衣服**為 pi,小x現在手中共有 m 個單位的現金,以及 k 張優惠卷。小x可以在購買某件衣服時,使用至多一張優惠券,若使用優惠券,則該衣服的**會下降至 qi,小x想知道他最多可以買幾件衣服。
輸入
第一行包含三個用空格隔開的正整數 n,k,m,依次表示衣服總數和優惠券數量及現金總數。
接下來 n 行每行包含兩個整數 pi,qi,表示該件衣服的**和***。資料保證 pi>=qi。
輸出
輸出資料僅有一行包含乙個整數,表示小 x 最多能購買的衣服數。
樣例輸入
複製樣例資料 4 1 7
3 22 2
8 14 3
樣例輸出
3提示
30%的資料,n<=5,k=1,m<=100
對於另外 10%的資料,n<=5,k<=5,m<=100
60%的資料,n<=200,k<=200
80%的資料,n<=2500,k<=2500
100%的資料,n<=50000,k<=50000,m<=10^16
先按優惠後**從小到大排,買完優惠卷的後,再按優惠前**從小到大排,直到錢花沒了或者買不起下一件為止,注意優惠後的買完以後把陣列中的數變得足夠大,防止後面再買一次。
#include
#include
#include
#include
using namespace std;
struct clotha[
100000];
intcmp1
(cloth a,cloth b)
intcmp2
(cloth a,cloth b)
intmain()
sort
(a+1
,a+1
+n,cmp2)
;for
(int i=
1;i<=n;i++
) cout
}
中石油新生賽第八場 問題 A 春遊
題目描述 小 就讀的cz 中學今年又取得了小高考的空前佳績,全校師生都很開心,於是大家希望找個地方去春遊,在廣泛徵集了全校師生的意見後,最終決定前往嬉戲谷遊玩一天。出行方案為租用大巴,可供租用的大巴有兩種,一種是49 座的,一種是33 座的,49 座的大巴每輛租金為3300 元,33 座的大巴每輛租...
新生訓練賽第八場個人題解
includeusing namespace std int main ma max ma,te cout 2.用scanf或者cin讀入單詞,每個單詞自動用空格隔開 看完這個就知道讀入字元的方式有多蠢了 鍵盤輸入ctrl c輸入結束 includeusing namespace std int m...
暑期個人賽 第八場 A
a.遊戲 2014新生暑假個人排位賽08 時間限制 1000 ms 記憶體限制 65536 kb 小弱發明了乙個好玩的遊戲,遊戲開始時給你乙個凸多邊形,這個多邊形可以任意旋轉,平移。讓你造出乙個正方形 容器 足夠大 容器的兩邊垂直,兩邊水平。用這個容器把這個多邊形完全包含,且多邊形有且只有一條邊恰好...