贝壳找房每个月都会计算各个城市房价的均价,计算的最后一步为:
将一个形如 X.YX.Y 的小数,用特殊近似法近似到整数。
计算完成后会将这个均价展示在首页供用户参考。
特殊近似法定义为:从最右边开始四舍五入到整数为止。
比如 4.445\Rightarrow4.45\Rightarrow4.5\Rightarrow54.445⇒4.45⇒4.5⇒5 。
输入格式
第一行一个整数 TT,表示数据组数。
每组数据中,第一行一个形如 X.YX.Y 的小数。
保证 0\le X\le10^{18},1\le|Y|\le1000,T\le 100000≤X≤1018,1≤∣Y∣≤1000,T≤10000。
输出格式
TT 行,每行一个整数,表示需要展示的均价。
样例输入
2 4.445 3.005
样例输出
5 3
题目来源
#include<iostream>
using namespace std;int main()
{
int n,m=0,q=0;
cin>>n;
int a[n],b[n];
while(n){
double p;
cin>>p;
int X = (p);
double Y;
Y = p - X ;
while(int(Y)-Y != 0)
{
Y = 10*Y;
a[m++]=int(Y);
}
for(int i=m-1;i>0;i--)
{
if(a[i]>=5)
{
a[i-1]=a[i-1]+1;
}
}
if(a[0]>=5)
{
b[q++]=X+1;
}
else
{
b[q++]=X;
}
n--;
m=0;
}
for(int j=0;j<q;j++)
{
cout<<b[j]<<endl;
}
return 0;
}