首页 > 其他 > 详细

SGU 152.Making round

时间:2014-07-17 18:39:27      阅读:345      评论:0      收藏:0      [点我收藏+]

     不断向下取直到,忽略的数累计到一个百分比,给当前百分比加1。

     这道题要避免处理浮点数,用余数来处理,不然会wa 9

 

      

#include <iostream>
#include <cmath>
using namespace std;
int g[10001];
int x, n, sum, le;
int main() {
	cin >> n;
	for (int i = 1; i <= n; i++) {
		cin >> g[i];
		sum += g[i];
	}
	for (int i = 1; i <= n; i++) {
		int k = g[i] * 100 / sum;
		le += g[i] * 100 - k * sum;
		g[i] = k;
		if (le >= sum) {
			le -= sum;
			g[i]++;
		}
		cout << g[i] << ‘ ‘;
	}
}

  

SGU 152.Making round,布布扣,bubuko.com

SGU 152.Making round

原文:http://www.cnblogs.com/keam37/p/3851386.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!