To Heart 題解 老鼠與貓的交易

2022-09-18 10:39:19 字數 638 閱讀 2465

有乙隻老鼠很喜歡乳酪,但是乳酪被分別放在n個房間裡,而且這些房間都有乙隻貓咪看守,現

在它準備和貓咪們做個交易。它有m磅的貓食,想用這m磅貓食換取乳酪。在貓咪看守的每乙個

房間裡有乳酪j[i]磅,同時貓咪需要f[i]磅的食物,如果老師給貓咪f[i]*a%的貓食,那麼它就可以

得到j[i]*a%的乳酪。現在已知每只貓咪對貓食的需求量和每個房間的乳酪數,那老鼠怎樣才能

換得最多的乳酪呢?

樣例輸入

5 37 2

4 35 2

樣例輸出

13.333

首先,看到這題,第一反應,貪心。。。

貪心策略:首先,我們可以算出,當a[i].j(即乳酪)最小,a[i].f(即貓食)最大的時候,最佳,所以我們只需要來乙個a[i].ans(double型別)來儲存a[i].f/a[i].j,在通過排序排出a[i].ans的最大的值就行了。。。

#include#includeusing namespace std;

struct zza[100005];

bool cmp(zz x,zz y)

else

} printf("%.3lf",sum);

}

老鼠與貓的交易

因為之前一直想做新題 摸魚 所以今天才寫題解 題目描述 輸入第一行輸入兩個正整數m和n m和n不大於10000 後面跟n行 每個房間的乳酪數和貓食的需求量 輸出輸出老鼠得到的最多的乳酪數,保留三位小數。資料範圍 第一行輸入兩個正整數m和n m和n不大於10000 後面跟n行 每個房間的乳酪數和貓食的...

To Heart 題解 樹的直徑

給定一棵樹,樹中每條邊都有乙個權值,樹中兩點之間的距離定義為連線兩點的路徑邊權之和。樹中最遠的兩個節點 兩個節點肯定都是葉子節點 之間的距離被稱為樹的直徑,連線這兩點的路徑被稱為樹的最長鏈。後者通常也可稱為直徑。我們設1號節點為根節點,那麼最短路徑則是到根節點最遠的乙個節點與次遠的乙個節點的距離之和...

To Heart 題解 樹的直徑

給定一棵樹,樹中每條邊都有乙個權值,樹中兩點之間的距離定義為連線兩點的路徑邊權之和。樹中最遠的兩個節點 兩個節點肯定都是葉子節點 之間的距離被稱為樹的直徑,連線這兩點的路徑被稱為樹的最長鏈。後者通常也可稱為直徑。我們設1號節點為根節點,那麼最短路徑則是到根節點最遠的乙個節點與次遠的乙個節點的距離之和...