关于 int128
  • 板块学术版
  • 楼主worldvanquisher
  • 当前回复5
  • 已保存回复5
  • 发布时间2023/4/20 10:04
  • 上次更新2023/10/23 18:00:28
查看原帖
关于 int128
663705
worldvanquisher楼主2023/4/20 10:04

rt,我使用 int128 跑分解质因数:

int ret=n;
for(int i=2;i*i<=ret;i++){
    if(ret%i==0){
        fac[0]++;
        fac[fac[0]]=i;cnt[fac[0]]=0;
        while(ret%i==0){
            ret/=i,cnt[fac[0]]++;
        }
    }
}
if(ret!=1)fac[++fac[0]]=ret,cnt[fac[0]]=1;

然后在开氧气时结果错误,gdb 一下发现fac[0]++;执行后值没有改变(当然开氧气调试大概不准),换成long long 答案正确。请问如何避免这种 int128 玄学错误的问题?

2023/4/20 10:04
加载中...