满堂花醉三千客,一剑霜寒十四洲。这篇文章主要讲述Wannafly挑战赛13 D-applese的生日相关的知识,希望能为你提供帮助。
【Wannafly挑战赛13 D-applese的生日】思路:首先要能看出, 对于每个蛋糕,如果分为k份,一定是平均分的;然后记录一下最小重量, 直接把这些蛋糕加到优先队列中,每次判断队列第一个蛋糕与最小值的比是否满足条件即可
Code:
#include<
bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = 1e5+10;
const ll mod = 998244353;
int n, m;
double T, k, mn;
struct D {
double a, b;
int num;
D() {}
D(double a, double b, int num) : a(a), b(b), num(num) {}
bool operator <
(const D &
t) const {
return b <
t.b;
}
};
int main() {
while(~scanf("
%lf %d"
, &
T, &
n)) {
priority_queue<
D>
q;
int ans = 0;
mn = mod;
for(int i = 0;
i <
n;
i++) {
scanf("
%lf"
, &
k);
q.push(D(k, k, 1));
mn = min(mn, k);
}
while(!q.empty()) {
D d = q.top();
q.pop();
if(mn / d.b >
= T) break;
d.num++;
d.b = d.a / d.num;
mn = min(d.b, mn);
ans++;
q.push(d);
}
printf("
%d\n"
, ans);
}
return 0;
}
推荐阅读
- 解决B4A编写的安卓app闪退的问题
- Android adb命令,linux中各种命令
- Android-语言国际化
- web页面如何打包封闭成手机APP
- android中调用c++文件并转为so
- Android studio中Terminal中使用git(Windows环境)
- Agora Android SDK-开始聊天
- Android底部虚拟按键遮挡PopWindow问题
- Android活动的启动模式