- 33
- 0
题目描述
这个是hackerrank上的题目
https://www.hackerrank.com/ch...
我的代码在以下数据的时候测试不通过。
https://hr-testcases-us-east-...
相关代码
// 请把代码文本粘贴到下方(请勿用图片代替代码)
'use strict';
process.stdin.resume();
process.stdin.setEncoding('utf-8');
let inputString = '';
let currentLine = 0;
process.stdin.on('data', inputStdin => {
inputString += inputStdin;
});
process.stdin.on('end', function() {
inputString = inputString.replace(/\s*$/, '')
.split('\n')
.map(str => str.replace(/\s*$/, ''));
main();
});
function readLine() {
return inputString[currentLine++];
}
function whatFlavors(cost, money) {
const cpyarr = cost.slice(0);
cost.sort((a,b)=>{
return b-a;
});
const start = findStartPoint(cost, money, 0);
// console.log(start);
for(let i=start;i<cost.length;i++){
if(cost[i]<money){
let remain = money - cost[i];
let remainIndex = cost.indexOf(remain,i+1);
if(remainIndex!=-1){
let first = cpyarr.indexOf(cost[i]);
let last = cpyarr.indexOf(cost[remainIndex]);
if(last === first){
last = cpyarr.indexOf(cost[remainIndex],first)+2;
first++;
}else{
last++;
first++;
};
let temp =0;
if(first>=last){
temp = first;
first = last;
last = temp;
};
return `${first} ${last}`
}
};
}
return `-1 -1`;
}
function findStartPoint(arr, money,startpoint){
let newarr = arr.slice(0);
let middle = Math.floor(newarr.length/2);
if(newarr[middle]>money){
return findStartPoint(newarr.splice(middle),money,middle);
}else if(newarr[middle] === money){
return middle;
}else{
return startpoint;
}
}
function main() {
const t = parseInt(readLine(), 10);
for (let tItr = 0; tItr < t; tItr++) {
const money = parseInt(readLine(), 10);
const n = parseInt(readLine(), 10);
const cost = readLine().split(' ').map(costTemp => parseInt(costTemp, 10));
const result = whatFlavors(cost, money);
console.log(result);
}
}
你期待的结果是什么?实际看到的错误信息又是什么?
0
打赏
收藏
点击回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

