首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> C++ >> C++ 入門

HDU 4882 ZCC Loves Codefires:貪心排序最小化加權完成時間(另版本)

     編輯:C++ 入門

題目重述

同 ID 209293,此處給出另一種代碼風格實現,使用 double 存儲性價比 e/k 排序。

代碼實現


#include <cstdio>
#include <algorithm>
#include <iostream>
using namespace std;

struct Node {
    int time, score;
    double ratio;
} a[100010];

bool cmp(const Node& x, const Node& y) {
    return x.ratio < y.ratio;
}

int main() {
    int n;
    while (~scanf("%d", &n)) {
        for (int i=0; i

注意事項

  • 使用 double 比較 e/k 在數據範圍內(e,k ≤ 10^4)通常安全,但交叉相乘比較(整數)更嚴謹,避免極端情況精度誤差。
  • 輸出格式 %lld 對應 long long。
  • 邏輯與 ID 209293 完全一致,僅比較函數寫法不同。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved