ceil以及double的精度问题

Codeforces Round #518 (Div. 2)  A

CF一道水题,总过不去 后面看了一下数据发现是精度出问题了

1000000000000000000 1 1 1000000000000000000

这里发现 ceil(1000000000000000000*1.0+1)/1 还是等于 1000000000000000000
是不是很神奇
百度之后发现

 转载自:https://zhidao.baidu.com/question/1367210420486994059.html 

C语言中,双精度浮点(double)型,占8 个字节(64位)内存空间。其数值范围为1.7E-308~1.7E+308,双精度完全保证的有效数字是15位,16位只是部分数值有保证,而单精度保证7位有效数字,部分数值有8位有效数

猜你喜欢

转载自www.cnblogs.com/ttttttttrx/p/9893246.html