hdu 4803 Poor Warehouse Keeper【贪心】

加总价的时候单价会改变

加数量单价不会改变

特判一次 贪心取就可以了

#include<bits/stdc++.h>
using namespace std; 

const double eps = 1e-9;

int main () {
	double x, y;
	while (scanf("%lf%lf", &x, &y) == 2) {
		if (x > y) {
			printf("-1\n");
			continue;
		}
		double k = (y+1-eps) / x;
		int cnt = (int)x - 1;
		double tmp = 1;
		for (int i = 1; i <= (int)x; i++) {
			double t = i * k;
			int u = (int)(t-tmp);
			tmp += u;
			tmp = tmp * (i+1) / i;
			cnt += u;
		}
		printf("%d\n", cnt);
	}
	return 0;
}

 

全部评论

相关推荐

06-28 22:48
已编辑
广东金融学院 Java
小浪_Coding:学院本+这俩项目不是buff叠满了嘛
点赞 评论 收藏
分享
代码飞升:别用口语,后端就写后端,前端就写前端,最后别光后悔
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-04 14:35
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务