题解 | #附加题#

附加题

http://www.nowcoder.com/questionTerminal/58b04ed2865f4ff4921290f1bd4ee486

//JS代码,仿照其他同学的c++代码转成js的,提交运行成功!
var room_num=readline();//房间的数量
var n=parseInt(room_num);//字符串转为整数
var arr =readline().trim().split(' ');//将n个数切割存入数组,得到的是字符串
var input=[];
var temp=arr.forEach(rounding)
function rounding(item){
    var num=parseInt(item);//对切割出来的字符串取整
    input.push(num);//将整数存入数组作为输入
}

var p=new Array(n+1);
p[0]=0;
for(var i=1;i<n+1;i++){
    p[i]=input[i-1]
}
//console.log(input)
//console.log(p)
var dp=new Array(n+2);
dp[1]=0;
for(var i=2;i<=n+1;i++){
    dp[i]=dp[i-1]+1+(dp[i-1]-dp[p[i-1]])+1;//并没有多,第一个+1是从 i-1 门走到 p[i-1]门需要一步,接着从 p[i-1]门再走到 i-1门需要dp[i-1] - dp[p[i-1]] 步,此时到达i-1门第二次就是偶数次,再走一步到达i门,也就是再+1
    if(dp[i]<0){
        dp[i]+=1000000007;
    }else if(dp[i]>=1000000007){
        dp[i]%=1000000007;
    }
}
console.log(dp[n+1])



全部评论

相关推荐

虽然大家都在劝退读研,说读研以后也是打工,不如本科直接去打工,但随着现在研究生越来越多,很多企业招聘要求就会变成研究生起招,本科投递简历就会被卡,横向比较时也会因为"本科学历比不上研究生学历"被筛掉,而且你没发现劝退读研的基本都是读完研的人吗?而且进体制、国企等,研究生也比本科生升的快,他们拿着研究生文凭劝你一个本科生,可别当真了
炬火初现:肯定是说本科能有好工作或者满意的可以不读研啊,现在本科能找到好工作的那个不优秀,大学四年赛高中,而且还要和学校斗智斗勇,这种时候自然有的选,要是只是觉得一辈子混口饭吃,大概率也考不上研,或者考上又浑浑噩噩三年,也难说。 而且考研所谓的优势说实话是你用差不多四年的时间成本(考一年,读三年)换过来的,而且还未必读完有今年的就业市场,当然不能随便决定读。 再还要看专业,一些稀奇古怪的专业说实话根本没有办法创造出什么价值,也没钱赚(如果有爱好,可以适当降低报酬标准)。现在非92的研究生说实话也没啥太多所谓优势,难说。 所以任何时候都要具体情况具体分析,不能一概而论。 一点点小看法。欢迎大家友善讨论。
点赞 评论 收藏
分享
水墨不写bug:疑似没有上过大学
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务