引入乙個問題:
題目分析:
判斷2件商品商品先買哪一件,這兩件商品買完後對剩餘商品的折扣不便,所以這2商品的先後順序不會對後面有所影響,
所以我們只需根據當前的匯率進行判斷先買哪乙個產品
當前匯率en
第1件產品的**a1,折扣b1
第2件產品的**a2,折扣b2
先買1,再買2,sum1=a1*en+a2*en*b1
先買2,再買1,sum2=a2*en+a1*en*b2
比較sum1和sum2,小的在前,所以假設sum1兩邊不等式化簡為a1*(1-b2)還可以化簡為a1/(1-b1)所以在用結構體進行比較時我們可以直接用式子1進行比較,也可以在寫乙個變數等於式子2,在進行比較
#includeusing namespace std;
const int maxn=1e5+5;
struct mmp
;int cmp(const mmp &x,const mmp &y)
};mmp p[maxn];
int main()
sort(p,p+n);
for(i=0,en=1,ans=0; iprintf("%.6lf\n",ans);
return 0;
}
sort 函式在結構體排序中的用法(C )
需要標頭檔案 algorithm譯為 演算法。語法描述 sort begin,end,cmp cmp引數可以沒有,如果沒有預設非降序 公升序 排序。include include includeusing namespace std int main sort a,a 5 for int i 0 i...
sort 及對結構體陣列用sort 的用法
排序sort bool cmp int x,int y 用來從大到小 不加則從小到大 或直接這樣寫 bool cmp int x,int y 用來從大到小 不加則從小到大 intmain sort a 0 a 11 cmp 陣列名 陣列需要排序的第乙個座標,陣列名 陣列需要排序的最後乙個座標 1 f...
結構體排序 sort()函式
只有用法示例,沒有函式詳解 該題題目為 有一種有趣的字串價值計算方式 統計字串中每種字元出現的次數,然後求所有字元次數的平方和作為字串的價值 例如 字串 abacaba 裡面包括4個 a 2個 b 1個 c 於是這個字串的價值為4 4 2 2 1 1 21 牛牛有乙個字串s,並且允許你從s中移除最多...