File tree 2 files changed +5
-5
lines changed
2 files changed +5
-5
lines changed Original file line number Diff line number Diff line change @@ -17,7 +17,7 @@ int main(int argc, char **argv) {
17
17
std::cout << " fibonacci(20) = " << FIB20 << std::endl;
18
18
19
19
// TODO: 观察错误信息,修改一处,使代码编译运行
20
- constexpr auto ANS_N = 100 ;
20
+ constexpr auto ANS_N = 90 ;
21
21
constexpr auto ANS = fibonacci (ANS_N);
22
22
std::cout << " fibonacci(" << ANS_N << " ) = " << ANS << std::endl;
23
23
Original file line number Diff line number Diff line change 3
3
// TODO: 改正函数实现,实现正确的缓存优化斐波那契计算
4
4
static unsigned long long fibonacci (int i) {
5
5
// TODO: 为缓存设置正确的初始值
6
- static unsigned long long cache[128 ], cached;
6
+ static unsigned long long cache[96 ], cached;
7
7
// TODO: 设置正确的循环条件
8
8
for (; false ; ++cached) {
9
9
cache[cached] = cache[cached - 1 ] + cache[cached - 2 ];
@@ -19,8 +19,8 @@ int main(int argc, char **argv) {
19
19
ASSERT (fibonacci (3 ) == 2 , " fibonacci(3) should be 2" );
20
20
ASSERT (fibonacci (10 ) == 55 , " fibonacci(10) should be 55" );
21
21
22
- auto fib100 = fibonacci (100 );
23
- std::cout << " fibonacci(100 ) = " << fib100 << std::endl;
24
- ASSERT (fib100 == 3736710778780434371 , " fibonacci(100 ) should be 3736710778780434371 " );
22
+ auto fib90 = fibonacci (90 );
23
+ std::cout << " fibonacci(90 ) = " << fib90 << std::endl;
24
+ ASSERT (fib90 == 2880067194370816120 , " fibonacci(90 ) should be 2880067194370816120 " );
25
25
return 0 ;
26
26
}
You can’t perform that action at this time.
0 commit comments