1.上台階
var n, array = [], m,array2 = []; n = read_line();n = parseInt(n); while(m = read_line()){ array.push(parseInt(m)); } for(var i = 0; i < n; i++){ array2[i] = func(array[i]); } for(var x = 0; x < array2.length; x++){print(array2[x]);} function func(m){ if(m >= 4){ return func(m - 1) + func(m - 2); }else if(m == 3){ return 2; }else if(m == 2){ return 1; }else if(m == 1){ return 0; } }
2.約德爾測試
var input = read_line(); var input2 = read_line(); var trans = ""; var reg = /[a-zA-Z0-9]/; for(var i = 0; i < input.length; i++){ if(reg.test(input[i])){ trans = trans + "1"; }else{ trans = trans + "0"; } } var count = 0; for(i = 0; i< input.length; i++){ if(trans[i] == input2[i]){ count++; } } print((count/input.length*100).toFixed(2) + "%");
3.分蘋果
果園里有堆蘋果,N(1<N<9)只熊來分。第一只熊把這堆蘋果平均分為N份,多了一個,它把多的一個扔了,拿走了一份。第二只熊把剩下的蘋果又平均分成N份,又多了一個,它同樣把多的一個扔了,拿走了一份,第三、第四直到第N只熊都是這么做的,問果園里原來最少有多少個蘋果?
輸入
輸入1個整數,表示熊的個數。它的值大於1並且小於9。
|
樣例輸入
5
|
輸出
為1個數字,表示果園里原來有的蘋果個數。
|
樣例輸出
3121 |
var tem; var N = read_line();N = parseInt(N); for(var i = 1;; i++){ tem = i; for(var j = 1; j <=N; j++){ tem = (tem - 1)/N * (N - 1); } if(Math.floor(tem) == tem && tem !=0){ print(i); break; } }
4.馬路上的路燈
城市E的馬路上有很多路燈,每兩個相鄰路燈之間的間隔都是1公里。小賽是城市E的領導,為了使E城市更快更好的發展,需要在城市E的一段長度為M的主干道上的一些區域建地鐵。這些區域要是建了地鐵,就需要挪走相應的路燈。可以把長度為M的主干道看成一個數軸,一端在數軸0的位置,另一端在M的位置;數軸上的每個整數點都有一個路燈。要建地鐵的這些區域可以用它們在數軸上的起始點和終止點表示,已知任一區域的起始點和終止點的坐標都是整數,區域之間可能有重合的部分。現在要把這些區域中的路燈(包括區域端點處的兩個路燈)移走。你能幫助小賽計算一下,將這些路燈移走后,馬路上還有多少路燈?
輸入
輸入文件的第一行有兩個整數M(1 <= M <= 10000)和 N(1 <= N <= 100), M代表馬路的長度,N代表區域的數目,M和N之間用一個空格隔開。 接下來的N行每行包含兩個不同的整數, 用一個空格隔開,表示一個區域的起始點和終止點的坐標。 所有輸入都為整數。且M和N的范圍為上面提示范圍。
|
樣例輸入
500 3
|
輸出
輸出文件包括一行,這一行只包含一個整數, 表示馬路上剩余路燈的數目。
|
樣例輸出
298 |
var input = read_line(); var M = parseInt(input.split(" ")[0]); var N = parseInt(input.split(" ")[1]); var line,array=[]; while(line = read_line()){ line = [parseInt(line.split(" ")[0]), parseInt(line.split(" ")[1])]; array.push(line); } count = 0; for(var i = 0; i <= M; i++){ var ok = true; for(var j = 0; j < array.length; j++){ if(i <=array[j][1] && i >= array[j][0]){ ok = false; break; } } if(ok){ count++; } } print(count);
5.日期倒計時
在經濟、科技日益發達的今天,人們對時間的把握越來越嚴格,對於一個一定影響力的公司的高管來說,他可能要將自己的行程提前安排到下個月。對於普通人來說,他也可能將幾天之后的安排已經提前做好。
請設計一個程序計算出今天距離未來的某一天還剩多少天。
假設今天是2015年10月18日。
輸入
輸入一個日期格式為yyyy-MM-dd, 不考慮日期是否小於今天。
|
樣例輸入
2015-10-19
|
輸出
輸出一個數字表示今天 (2015年10月18日) 距離該日期還剩多少天。
|
樣例輸出
1 |
var input = read_line(); arr = input.split("-"); arr.forEach(function(item, index){ arr[index] = parseInt(item); }); var day = +new Date(arr[0], arr[1] - 1, arr[2]); var today = +new Date(2015, 9, 18); var long = (day - today)/(1000 * 60 * 60 * 24 ); print(long);
6.約會
Bob和Alice有個約會,一大早Bob就從點(0,0)出發,前往約會地點(a,b)。Bob沒有一點方向感,因此他每次都隨機的向上下左右四個方向走一步。簡而言之,如果Bob當前在(x,y),那么下一步他有可能到達(x+1,y), (x-1,y), (x,y+1), (x,y-1)。很顯然,當他到達目的地的時候,已經很晚了,Alice早已離去。第二天,Alice質問Bob為什么放她鴿子,Bob說他昨天花了s步到達了約會地點。Alice懷疑Bob是不是說謊了。你能否幫她驗證一下?
輸入
輸入三個整數a,b,s
|
樣例輸入
5 5 11
|
輸出
輸出“Yes”, 如果Bob可能用s步到達(a,b); 否則輸出“No”, 不需要輸出引號。
|
樣例輸出
No |
var input; input = read_line(); input = input.split(" "); input[0] = parseInt(input[0]);input[1] = parseInt(input[1]);input[2] = parseInt(input[2]); var a = input[0], b = input[1], s = input[2]; if(a < 0)a = -a; if(b<0)b = -b; var x = s - (a + b); if(x % 2 ==0 && x >= 0){ print("Yes"); }else{ print("No"); }
7.公交車乘客
一個公交車經過n個站點,乘客從前門上車,從后門下車。
現在統計了在第i個站,下車人數a[i],以及上車人數b[i]。
問公交車運行時候車上最多有多少乘客
輸入
第一行讀入一個整數n(1<=n<=100), 表示有n個站點 接下來n行,每行兩個數值,分別表示在第i個 站點下車人數和上車人數
|
樣例輸入
4 0 3 2 5 4 2 4 0
|
輸出
每組輸出車上最多的乘客數目
|
樣例輸出
6 |
var input; input = read_line(); input = parseInt(input); var line; var most = 0, tem = 0; for(var i = 1; i<=input;i++){ line = read_line(); line = [ parseInt(line.split(" ")[0]), parseInt(line.split(" ")[1]) ]; tem = tem - line[0] + line[1]; if(most < tem){ most = tem; } } print(most);