**填空題:
1.報數遊戲
vector a = new vector();
for(int i=1; i<=10; i++)
for(;;)
system.out.println(a);
答案:
a.add(a.remove(0));
思路:
vector其實不是很懂,但是憑其他**可以看出add和remove的作用,在第三個for迴圈中填寫a.add(a.remove(0));實際上是將沒有報三的孩子新增到vector容器的尾部,即k=0,k=1時。該迴圈外的a.remove(0)則是將報三的孩子移除容器。
2.不連續處斷開
下列**執行結果為:
12345
23456
8923456789
即把乙個串從數字不連續的位置斷開。試完善之。
string s = "12345234568923456789";
string t = "1";
for(int i=1; i
答案:
t = "" + s.charat(i)
思路:
如果是連續的數字就執行if中的語句,如果不連續,執行else中的語句,先輸出t,再將t清空並加上當前位置的數字。
3.猜數字遊戲
很多人都玩過這個遊戲:甲在心中想好乙個數字,乙來猜。每猜乙個數字,甲必須告訴他是猜大了,猜小了,還是剛好猜中了。下列的**模擬了這個過程。其中使用者充當甲的角色,計算機充當乙的角色。為了能更快地猜中,計算機使用了二分法。
閱讀分析**,填寫缺失的部分。
把填空的答案(僅填空處的答案,不包括題面)存入考生資料夾下對應題號的「解答.txt」中即可。
system.out.println("請在心中想好乙個數字(1~100),我來猜");
system.out.println("我每猜乙個數字,你要告訴我是「猜大了」,「猜小了」,還是「猜中」");
scanner scan = new scanner(system.in);
int v1 = 1;
int v2 = 100;
for(;;)
答案:
v2 = m-1
v1 = m+1
思路:
當心中的數比m小時,即猜的太大時,只需在v1和m-1中繼續找即可,反之則在m+1和v2中找。
4.反轉串
我們把「cba」稱為「abc」的反轉串。
求乙個串的反轉串的方法很多。下面就是其中的一種方法,**十分簡潔(甚至有些神秘),請聰明的你通過給出的一點點線索補充缺少的**。
把填空的答案(僅填空處的答案,不包括題面)存入考生檔案下對應題號的「解答.txt」中即可。
public static string reversestring(string x)
答案:
reversestring(x.substring(1))
思路:
通過遞迴將首字母放到尾字母後面即可
5.串中找數字
以下的靜態方法實現了:把串s中第乙個出現的數字的值返回。
如果找不到數字,返回-1
例如:s = "abc24us43" 則返回2
s = "82445adb5" 則返回8
s = "ab" 則返回-1
public static int getfirstnum(string s)
答案:
c-'0'
getfirstnum(s.substring(1))
思路:
題目簡單,但是切記將char c所代表的數字轉換成實際意義的數字,即減去『0『或48。。。我在初做的時候忘記了,結果出來了個50有點懵,後來才發現錯誤。
結果填空題:
空瓶換汽水
浪費可恥,節約光榮。飲料店節日搞活動:不用付費,用3個某飲料的空瓶就可以換一瓶該飲料。剛好小明前兩天買了
2瓶該飲料喝完了,瓶子還在。他耍了個小聰明,向老闆借了乙個空瓶,湊成
3個,換了一瓶該飲料,喝完還瓶!!
飲料店老闆一統計,已經售出該飲料且未還瓶的有12345瓶,那麼如果這些飲料的買主都如小明一樣聰明,老闆最多還需要送出多少瓶飲料呢?
顯然答案是個正整數。
參***:
6172
思路:12345/2≈6172,即最大數。
2.三人年齡
三個神秘蒙面人來訪f博士。
博士詢問他們年齡時,他們說:我們中年齡最小的不超過19歲。我們
3人年齡總和為
70歲。且我們三人年齡的乘積是所有可能情況中最大的。
請幫助f博士計算他們的年齡,從小到大排列,用逗號分開。
參***:
19,25,26
思路:填空題用三重for迴圈暴力破解即可,判斷條件是i,j,k總和為70。且如果i*j*k>sum,則將sum替換成i*j*k(sum初始化為0)。
3.考察團組成
某飯店招待國外考察團。按照標準,對領導是400元
/人,隨團職員
200元
/人,對司機50元
/人。考察團共36人,招待費結算為
3600
元,請問領導、職員、司機各幾人。
答案是三個整數,用逗號分隔。
參***:
3,5,28
思路:
同樣是多重迴圈暴力破解即可。
藍橋杯寒假訓練 1
一年一度的植樹節就要到了,計算機學院學生準備在學院教學樓門前的空地上種植樹木。為使樹木排列得更加美觀,大家決定把樹木排列成菱形。現在告訴你我們所擁有的樹木能排列成邊長為 nn 的菱形,請你程式設計輸出樹木所排列的圖案 用 號代表樹木 input 乙個整數 nn 1 n 10 1 n 10 outpu...
藍橋杯訓練day1
快速冪 題目描述 給定a,b,p,求 a b mod p。輸入輸入共一行。第一行有三個數,n,m,p。輸出輸出共一行,表示所求。共10組資料 對100 的資料,a,b為long long範圍內的非負整數,p為int內的非負整數。樣例輸入 2 5 3樣例輸出 21 初始的時候可以令res 1 2 判斷...
藍橋杯(一)入門訓練
時間限制 1.0s 記憶體限制 256.0mb 求1 2 3 n的值。輸入包括乙個整數n。輸出一行,包括乙個整數,表示1 2 3 n的值。說明 有一些試題會給出多組樣例輸入輸出以幫助你更好的做題。一般在提交之前所有這些樣例都需要測試通過才行,但這不代表這幾組樣例資料都正確了你的程式就是完全正確的,潛...