晚秋(lateautumn)
2024-06-22 08:09 Moderator
太厉害了
Reply Like 0 View the author
太厉害了
运行实证:答案是对的
穷举法时空复杂度太大了。而且你还用了递归。
我打算给出新解法,说不定我也能获个奖
我打算给出新解法,说不定我也能获个奖
期待阁下的思路与算法。
这个好,关注一下,刚好思考思考。。。
var a = [0, 7, 8];
var b = [2, 6, 7];
var c = [0, 1, 6];
var d = [0, 2, 6];
var f = [1, 3, 2, 4, 0, 4, 1, 2, 3, 0]
for (var aa = 0; aa < a.length; aa++) {
for (var bb = 0; bb < b.length; bb++) {
for (var cc = 0; cc < c.length; cc++) {
for (var dd = 0; dd < d.length; dd++) {
if (a[aa] != b[bb] && a[aa] != b[bb] && a[aa] != c[cc] && a[aa] != d[dd] && b[bb] != c[cc] && b[bb] != d[dd] && c[cc] != d[dd]) {
if (f[a[aa]] + f[b[bb]] + f[c[cc]] + f[d[dd]] == 10) {
console.log(a[aa] + '' + b[bb] + '' + c[cc] + '' + d[dd])
}
}
}
}
}
}
原题:
代码使用C语言编写,写的很潦草,见笑了。
众所周知,程序员不喜欢写注释【狗头】。