一个很奇怪的问题

来源:2-2 使用模板(泛型)编写算法

D_Artist

2018-10-18

有一段代码出现了莫名其妙的错误,如下图

图片描述

如果j从奇数开始的话就是正确的

图片描述

j=0的时候依然是正确的,如下

图片描述

我做code jam中自己写的代码中发现有bug,有些case会比正确答案少1,后来发现问题出在这样一段函数中,数我单独拿出调着看的结果如上面几幅图,波波老师知道怎么回事吗

写回答

1回答

liuyubobobo

2018-10-19

不同的版本的C++编译器得到的结果不一样。但整体应该是C++中的pow的精度问题。


C++的pow返回的是double类型,所以存在精度问题,我以前也遇到过:)如果自己是计算整数幂,最好自己写一个快速幂算法:)

1
1
D_Artist
好的我知道了,谢谢波波老师
2018-10-19
共1条回复

算法与数据结构(C++版) 面试/评级的算法复习技能包

课程专为:短时间内应对面试、升职测评等艰巨任务打造

11213 学习 · 1617 问题

查看课程