第一題:
描述 :計算a加b。 輸入一行,用空格分開的兩個整數a和b。其中0≤a, b≤10000。
輸出 :一個整數,為a加b的和。
範例輸入 :1 2
範例輸出 :3
import java.util.Scanner;<br />public class Main {<br />public static void main(String[] args) {<br />Scanner scanner = new Scanner(System.in);<br />int one = scanner.nextInt();<br />int two = scanner.nextInt();<br />if(one>= 0 && one<=10000 && two>=0 && two<=10000)<br />System.out.println(one+two);<br />}<br />}
第二題:
描述: 計算a的b次方對9907模數的值。
輸入
第一行有一個正整數T,表示有T組測試資料。
接下來T行,每行是一組測試資料,包含兩個整數a和b。
其中T<=10000, 0 <=a,b < 2^31。
輸出有T行,依次輸出每組資料的結果。
範例輸入:
3
1 2
2 3
3 4
範例輸出:
1
8
81
第三題:
描述
菲波那切數列可以用下列的式子表示:
f(1)=1
f(2)=1
f(n)=f(n-1)+f(n-2) (n>=3)
現在我們根據這個規則定義另一種數列 命名為"辛波那切數列", 它是這樣定義的:
s(x)=0 (x<0)
s(x)=1 (0<=x<1)
s(x)=s(x-1)+s(x-3.14) (x>=1)
現在需要計算出s(x) MOD 1000000007的值。
輸入
第一行有一個正整數T表示有T組測試資料。
接下來T行,每行包含一個數x。
其中 T<=10000, -1000.0<=x<=1000.0
輸出
有T行,依次輸出每組資料的結果。
範例輸入
3
-1
0.667
3.15
範例輸出
0
1
2
import java.util.Scanner;<br />public class Main {<br />public static void main(String[] args) {<br />Scanner scanner = new Scanner(System.in);<br />int total = scanner.nextInt();<br />if(total<=10000){<br />double[] inputs=new double[total];<br />for(int i=0;i<total;i++){<br />inputs[i] = scanner.nextDouble();<br />}<br />for(int i=0;i<total;i++){<br />System.out.println(SelfCall(inputs[i]));<br />}<br />}<br />}<br />private static double SelfCall(double input){<br />if(input < 0)<br />return 0;<br />else<br />if(input<1)<br />return 1;<br />else<br />return SelfCall(input-1)+SelfCall(input-3.14);<br />}<br />}<br />