为什么不添加 bigInts?

Why aren't the bigInts adding?

我制作了一个 NodeJS 程序,它将整数对 (m, n) 作为输入并在控制台上打印其阶乘 (facm, factn) 的 sum。我使用了 BigInteger.js 库,这样我就可以使用大数字进行计算。

但是当我输入20 1时,程序只输出了20的值!而不是 20! + 1!它没有添加。为什么?

(由于某些原因,它适用于两个输入相同的情况,例如20 20。当值较小时它也适用。)

var input = require('fs').readFileSync('/dev/stdin', 'utf8');
var lines = input.split('\n');
var bigInt = require("big-integer");

for (var i = 0; lines[i] != ""; i++) { 
    var strings = lines[i].split(" ");
    var m = parseInt(strings[0]);
    var n = parseInt(strings[1]);
    var factm = bigInt(1);
    var factn = bigInt(1);
    for (var a = m; a != 0; a--) {
        factm = factm.multiply(a);
    }
    for (var b = n; b != 0; b--) {
        factn = factn.multiply(b);
    }
    var sum = factm.add(factn);
    console.log(sum.toString());
}

var sum = factm.add(factn) 替换为 var sum = factm.add(factn.toString()) 即可解决问题。