高精度加法求助
查看原帖
高精度加法求助
226167
呆呆的她啊楼主2024/8/17 21:17

rt 蒟蒻写的第一个 发现答案错误 为什么换第二个就对了呢

void add(int m){//高精乘和高精加,把f[i] = (i - 1) * (f[i - 1] + f[i - 2]) 高精化

	for(int i = 1;i < 100001;i++){//高精加 
		f[m][i] = f[m - 1][i] + f[m - 2][i] ;
		f[m][i+1]= f[m][i] / 10;
		f[m][i] %= 10;
	}
	for(int i = 1;i < 100001;i++){//高精乘 
		f[m][i] = f[m][i] * (m - 1) ;
		f[m][i+1]= f[m][i] / 10;
		f[m][i] %= 10;
	}
}
void add(int m){//高精乘和高精加,把f[i] = (i - 1) * (f[i - 1] + f[i - 2]) 高精化
    int x = 0;
    for(int i = 1;i < 100001;i++){//高精加 
        f[m][i] = f[m - 1][i] + f[m - 2][i] + x;
        x = f[m][i] / 10;
        f[m][i] %= 10;
    }
    x = 0;
    for(int i = 1;i < 100001;i++){//高精乘 
        f[m][i] = f[m][i] * (m - 1) + x;
        x = f[m][i] / 10;
        f[m][i] %= 10;
    }
}
2024/8/17 21:17
加载中...