100007 - 浮点数排序

我们有n个正浮点数,均小于10000。现在需要将这些浮点数按照离它最近的整数的差从小到大排序,浮点数与距离最近的整数的差越小,这个浮点数的排位越靠前;如果差相等,按照浮点数的值从小到大排序 


判断浮点数相等的技巧:

if(fabs(a-b) < EPSILON){

//执行当两个浮点数a和b相等时的操作

}

EPSILON是常量,大小是10^-6

abs():整数绝对值

fabs():浮点数绝对值

输入

输入有两行 
第一行: 是一个整数n,0<n<101 
第二行: 用空格隔开的n个正浮点数,均小于10000.0

输出

输出有 1 行,为按照题目要求排序后的n个正浮点数,四舍五入保留6位小数,用空格隔开

样例

输入

9
1.001 2.1 3.2 4.0001 5.000001 6.9 7.2 8.001 9.0

输出

9.000000 5.000001 4.000100 1.001000 8.001000 2.100000 6.900000 3.200000 7.200000
时间限制 1 秒
内存限制 128 MB
讨论 统计
上一题 下一题