每日算法-股神
@(每日算法)
题目描述
有股神吗?
有,小赛就是!
经过严密的计算,小赛买了一支股票,他知道从他买股票的那天开始,股票会有以下变化:第一天不变,以后涨一天,跌一天,涨两天,跌一天,涨三天,跌一天…依此类推。
为方便计算,假设每次涨和跌皆为1,股票初始单价也为1,请计算买股票的第n天每股股票值多少钱?
方法1:
解题思路:先假设每天都赚钱,股票的价格根据天数一直累加,然后计算当n天时共减了几次钱,每减一次钱就-2(当天不赚钱并且扣一次钱)涨钱的次数是逐级递增的
function Money(n){
var i=0,k=j=2;
while(k<n){
i=i+2;
j++;
k=j+k;
}
return (n-i)
}
方法2:
for(i=2;i<=n;i++){
var a=b=1;
if(a>0){
money++;
a--;
}else if{
money--;
b++;
a=b;
}
return money;
}