蓝桥杯 入门训练 试题集汇总 【A+B问题、序列求和、圆的面积、Fibonacci数列】
練習(xí)系統(tǒng)
??
目? ?錄
BEGIN-1 A+B問題
BEGIN-2 序列求和
BEGIN-3 圓的面積
BEGIN-3 Fibonacci數(shù)列
BEGIN-1 A+B問題
資源限制
時(shí)間限制:1.0s ? 內(nèi)存限制:256.0MB
問題描述
輸入A、B,輸出A+B。
說明:在“問題描述”這部分,會給出試題的意思,以及所要求的目標(biāo)。
輸入格式
輸入的第一行包括兩個(gè)整數(shù),由空格分隔,分別表示A、B。
說明:“輸入格式”是描述在測試你的程序時(shí),所給的輸入一定滿足的格式。
做題時(shí)你應(yīng)該假設(shè)所給的輸入是一定滿足輸入格式的要求的,所以你不需要對輸入的格式進(jìn)行檢查。多余的格式檢查可能會適得其反,使用你的程序錯(cuò)誤。
在測試的時(shí)候,系統(tǒng)會自動(dòng)將輸入數(shù)據(jù)輸入到你的程序中,你不能給任何提示。比如,你在輸入的時(shí)候提示“請輸入A、B”之類的話是不需要的,這些多余的輸出會使得你的程序被判定為錯(cuò)誤。
輸出格式
輸出一行,包括一個(gè)整數(shù),表示A+B的值。
說明:“輸出格式”是要求你的程序在輸出結(jié)果的時(shí)候必須滿足的格式。
在輸出時(shí),你的程序必須滿足這個(gè)格式的要求,不能少任何內(nèi)容,也不能多任何內(nèi)容。如果你的內(nèi)容和輸出格式要求的不一樣,你的程序會被判斷為錯(cuò)誤,包括你輸出了提示信息、中間調(diào)試信息、計(jì)時(shí)或者統(tǒng)計(jì)的信息等。
樣例輸入
12 45
說明:“樣例輸入”給出了一組滿足“輸入格式”要求的輸入的例子。
這里給出的輸入只是可能用來測試你的程序的一個(gè)輸入,在測試的時(shí)候,還會有更多的輸入用來測試你的程序。
樣例輸出
57
說明:“樣例輸出”給出了一組滿足“輸出格式”要求的輸出的例子。
樣例輸出中的結(jié)果是和樣例輸入中的是對應(yīng)的,因此,你可以使用樣例的輸入輸出簡單的檢查你的程序。
要特別指出的是,能夠通過樣例輸入輸出的程序并不一定是正確的程序,在測試的時(shí)候,會用很多組數(shù)據(jù)進(jìn)行測試,而不局限于樣例數(shù)據(jù)。有可能一個(gè)程序通過了樣例數(shù)據(jù),但測試的時(shí)候仍只能得0分,可能因?yàn)檫@個(gè)程序只在一些類似樣例的特例中正確,而不具有通用性,再測試更多數(shù)據(jù)時(shí)會出現(xiàn)錯(cuò)誤。
比如,對于本題,如果你寫一個(gè)程序不管輸入是什么都輸入57,則樣例數(shù)據(jù)是對的,但是測試其他數(shù)據(jù),哪怕輸入是1和2,這個(gè)程序也輸出57,則對于其他數(shù)據(jù)這個(gè)程序都不正確。
數(shù)據(jù)規(guī)模與約定
-10000 <= A, B <= 10000。
說明:“數(shù)據(jù)規(guī)模與約定”中給出了試題中主要參數(shù)的范圍。
這個(gè)范圍對于解題非常重要,不同的數(shù)據(jù)范圍會導(dǎo)致試題需要使用不同的解法來解決。比如本題中給的A、B范圍不大,可以使用整型(int)來保存,如果范圍更大,超過int的范圍,則要考慮其他方法來保存大數(shù)。
有一些范圍在方便的時(shí)候是在“問題描述”中直接給的,所以在做題時(shí)不僅要看這個(gè)范圍,還要注意問題描述。
package A入門訓(xùn)練;import java.util.*;public class A4_A加B問題 {public static void main(String[] args) {// TODO Auto-generated method stubScanner sc = new Scanner(System.in);Integer a = sc.nextInt();Integer b = sc.nextInt();System.out.println(a + b);}}BEGIN-2 序列求和
資源限制
時(shí)間限制:1.0s ? 內(nèi)存限制:256.0MB
問題描述
求1+2+3+...+n的值。
輸入格式
輸入包括一個(gè)整數(shù)n。
輸出格式
輸出一行,包括一個(gè)整數(shù),表示1+2+3+...+n的值。
樣例輸入
4
樣例輸出
10
樣例輸入
100
說明:有一些試題會給出多組樣例輸入輸出以幫助你更好的做題。
一般在提交之前所有這些樣例都需要測試通過才行,但這不代表這幾組樣例數(shù)據(jù)都正確了你的程序就是完全正確的,潛在的錯(cuò)誤可能仍然導(dǎo)致你的得分較低。
樣例輸出
5050
數(shù)據(jù)規(guī)模與約定
1 <= n <= 1,000,000,000。
說明:請注意這里的數(shù)據(jù)規(guī)模。
本題直接的想法是直接使用一個(gè)循環(huán)來累加,然而,當(dāng)數(shù)據(jù)規(guī)模很大時(shí),這種“暴力”的方法往往會導(dǎo)致超時(shí)。此時(shí)你需要想想其他方法。你可以試一試,如果使用1000000000作為你的程序的輸入,你的程序是不是能在規(guī)定的上面規(guī)定的時(shí)限內(nèi)運(yùn)行出來。
本題另一個(gè)要值得注意的地方是答案的大小不在你的語言默認(rèn)的整型(int)范圍內(nèi),如果使用整型來保存結(jié)果,會導(dǎo)致結(jié)果錯(cuò)誤。
如果你使用C++或C語言而且準(zhǔn)備使用printf輸出結(jié)果,則你的格式字符串應(yīng)該寫成%I64d以輸出long long類型的整數(shù)。
package A入門訓(xùn)練;import java.util.Scanner;public class A3_序列求和 {public static void main(String[] args) {// TODO Auto-generated method stubScanner sc = new Scanner(System.in);long n = sc.nextLong();long sum = (n * (1 + n)) / 2;System.out.println(sum);// (long)n*(n+1)/2} }BEGIN-3 圓的面積
資源限制
時(shí)間限制:1.0s ? 內(nèi)存限制:256.0MB
問題描述
給定圓的半徑r,求圓的面積。
輸入格式
輸入包含一個(gè)整數(shù)r,表示圓的半徑。
輸出格式
輸出一行,包含一個(gè)實(shí)數(shù),四舍五入保留小數(shù)點(diǎn)后7位,表示圓的面積。
說明:在本題中,輸入是一個(gè)整數(shù),但是輸出是一個(gè)實(shí)數(shù)。
對于實(shí)數(shù)輸出的問題,請一定看清楚實(shí)數(shù)輸出的要求,比如本題中要求保留小數(shù)點(diǎn)后7位,則你的程序必須嚴(yán)格的輸出7位小數(shù),輸出過多或者過少的小數(shù)位數(shù)都是不行的,都會被認(rèn)為錯(cuò)誤。
實(shí)數(shù)輸出的問題如果沒有特別說明,舍入都是按四舍五入進(jìn)行。
樣例輸入
4
樣例輸出
50.2654825
數(shù)據(jù)規(guī)模與約定
1 <= r <= 10000。
提示
本題對精度要求較高,請注意π的值應(yīng)該取較精確的值。你可以使用常量來表示π,比如PI=3.14159265358979323,也可以使用數(shù)學(xué)公式來求π,比如PI=atan(1.0)*4。
package A入門訓(xùn)練;import java.util.Scanner;public class A2_圓的面積 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int r = sc.nextInt();double PI = 3.14159265358979323;System.out.printf("%.7f", PI * r * r);} }BEGIN-3 Fibonacci數(shù)列
資源限制
時(shí)間限制:1.0s ? 內(nèi)存限制:256.0MB
問題描述
Fibonacci數(shù)列的遞推公式為:Fn=Fn-1+Fn-2,其中F1=F2=1。
當(dāng)n比較大時(shí),Fn也非常大,現(xiàn)在我們想知道,Fn除以10007的余數(shù)是多少。
輸入格式
輸入包含一個(gè)整數(shù)n。
輸出格式
輸出一行,包含一個(gè)整數(shù),表示Fn除以10007的余數(shù)。
說明:在本題中,答案是要求Fn除以10007的余數(shù),因此我們只要能算出這個(gè)余數(shù)即可,而不需要先計(jì)算出Fn的準(zhǔn)確值,再將計(jì)算的結(jié)果除以10007取余數(shù),直接計(jì)算余數(shù)往往比先算出原數(shù)再取余簡單。
樣例輸入
10
樣例輸出
55
樣例輸入
22
樣例輸出
7704
數(shù)據(jù)規(guī)模與約定
1 <= n <= 1,000,000。
package A入門訓(xùn)練;import java.util.Scanner;public class A1_Fibonacci數(shù)列 {public static void main(String[] args) {// TODO Auto-generated method stub // Scanner sc = new Scanner(System.in); // int n = sc.nextInt(); // int f1 = 1; // int f2 = 1; // int f3 = 1; // for(int i=3; i<=n; i++) { // f3 = (f1+f2)%10007; // f1 = f2; // f2 = f3; // } // System.out.println(f3);Scanner sc = new Scanner(System.in);int n = sc.nextInt();int a = 1, b = 1, c = 1;for (int i = 3; i <= n; i++) {c = a + b;while (c >= 10007) {c -= 10007;}a = b;b = c;}System.out.println(c);sc.close();}} package A入門訓(xùn)練;import java.util.Scanner;public class A1_Fibonacci數(shù)列2 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);int n = sc.nextInt();if (n == 1) {System.out.println(1);} else {int a[] = new int[n];a[0] = 1;a[1] = 1;for (int i = 2; i < n; i++) {a[i] = (a[i - 1] + a[i - 2]) % 10007;}System.out.println(a[n - 1]);}}}🎈🎈🎈
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的蓝桥杯 入门训练 试题集汇总 【A+B问题、序列求和、圆的面积、Fibonacci数列】的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 数学建模清风第一次直播:传染病模型和微分
- 下一篇: 蓝桥杯 基础训练 试题集汇总【13道】