我有正确的解决方案在CodeEval上获取Prime Palindrome问题,但不断收到以下错误:
TypeError: path must be a string
这是我的解决方案:
var fs = require('fs');
fs.readFileSync(process.argv[2])
.toString()
.split('\n')
.forEach(isPrime)
function isPrime(input){
if (input === '') return;
if (input < 1001 ) {
var output = '';
for (var i = 2; i < input; i++) {
if ( input % i === 0 ) {
input--
} else {
output = input;
}
}
}
palindrome(output)
}
function palindrome(prime){
var str = prime.toString();
if (str.split('').reverse().join('') === str){
console.log('str', str)
} else {
str--
isPrime(str)
}
}
因为CodeEval只通过console.logs接受答案,所以我必须在console.log中输出输出,它确实在我的终端中显示正确的解决方案。
我是否遗漏了某些内容,或者这是CodeEval中的错误?
答案 0 :(得分:0)
与大多数CodeEval挑战不同,Prime Palindrome不接受任何输入 - 你应该取出你的fs.readFileSync等,然后让你的解决方案找到并且“打印到stdout小于1000的最大主要回文。”