cuốn sách gpt4 ai đã làm

c++ - Project Euler: #14 Tràn số nguyên và tràn ngăn xếp

In lại Tác giả: Walker 123 更新时间:2023-11-28 03:48:06 27 4
mua khóa gpt4 Nike

unsigned long long terms;
unsigned long long test;
unsigned long long digit = 1;
unsigned long long max = 0;

//cout<<><>
//cout<<><>
for(;digit<1000000;++digit)
{
terms = 1;
test = digit;
while(test>1)
{
if(0==(test%2))
{
test /=2;
}khác{
test = test *3 +1;
}
terms ++;
}
if(terms>max)
max = terms;
}
//terms = get_chain_length();

/*if(terms>max)
max = terms;*/
//cout<<>
cout<<><>

它超出了 INT_MAX,我该如何更正它?我尝试以递归方式使用 Hash_map,但叠加。

câu trả lời hay nhất

Đây là Collatz Conjecture .考虑使用 memoization通过存储你所看到的链的长度来解决问题(例如,如果 6 的链长度为 7,而你在处理更改 N 时遇到 6,那么你可以将 7 添加到链长度中,然后立即返回).

关于c++ - 欧拉计划 :#14 Integer overflow and Stack overflow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6760773/

27 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress