Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
436216 王栎州 【C6-7】阿里巴巴与四十大盗 C++ 通过 100 2 MS 272 KB 685 2026-04-12 10:04:33

Tests(1/1):


#include<bits/stdc++.h> using namespace std; int n,m,a[10086],b[10086]; double c[10086]; bool cmp(int x,int y){ return c[x]>c[y]; } int main(){ cin>>n>>m; for(int i=1;i<=n;i++){ cin>>a[i]>>b[i]; c[i] = 1.0*b[i]/a[i]; } int id[10086]; for(int i=1;i<=n;i++) id[i]=i; sort(id+1,id+n+1,cmp); double ans = 0; int rest = m; for(int i=1;i<=n;i++){ int k = id[i]; if(rest >= a[k]){ ans += b[k]; rest -= a[k]; }else{ ans += c[k] * rest; rest = 0; break; } } printf("%.1f\n",ans); return 0; }


测评信息: