1. 程式人生 > 其它 >「個人」CSP 2019 入門組第一輪 重點講解

「個人」CSP 2019 入門組第一輪 重點講解

零.前言

能考到 \(71\) 分是我沒有想到的,畢竟在 FJ 能穩過。

一.單項選擇題

第七題:

\(8\) 個同樣的球放在 \(5\) 個同樣的袋子裡,允許有的袋子空著不放,問共有多少種不同的分法?
提示:如果 \(8\) 個球都放在一個袋子裡,無論是哪個袋子,都只算一種分法。

\(A. 22\) \(B. 24\) \(C. 18\) \(D. 20\)

答案是 \(C\)

我們把答案分成以下幾個部分進行統計: \(5\) 個袋子都不空的情況, \(4\) 個袋子都不空的情況,以此類推。

\(5\) 個袋子都不空的情況有 \(3\) 種。

\(1,1,1,1,4\)

\(1,1,1,2,3\)

\(1,1,2,2,2\)

\(4\) 個袋子都不空的情況有 \(5\) 種。

\(1,1,1,5\)

\(1,1,2,4\)

\(1,1,3,3\)

\(1,2,2,3\)

\(2,2,2,2\)

\(3\) 個袋子都不空的情況有 \(5\) 種。

\(1,1,6\)

\(1,2,5\)

\(1,3,4\)

\(2,2,4\)

\(2,3,3\)

\(2\) 個袋子都不空的情況有 \(4\) 種。

\(1,7\)

\(2,6\)

\(3,5\)

\(4,4\)

\(1\) 個袋子都不空的情況有 \(1\) 種。

\(8\)

所以一共有 \(3+5+5+4+1 = 18\) 種不同的分法。


第十三題

—些數字可以顛倒過來看,例如 \(0、1、8\) 顛倒過來還是本身,\(6\) 顛倒過來是 \(9\), \(9\) 顛倒過來看還是 \(6\),其他數字顛倒過來都不構成數字。
類似的,一些多位數也可以顛倒過來看,比如 \(106\) 顛倒過來是 \(901\)。假設某個城市的車牌只由 \(5\) 位數字組成,每一位都可以取 \(0\)\(9\)
請問這個城市最多有多少個車牌倒過來恰好還是原來的車牌?()

\(A. 60\) \(B. 125\) \(C. 75\) \(D. 100\)

答案是 \(C\),僥倖蒙對。

容易發現,中間位置,也就是第三位,只能填 \(0,1,8\)

並且可以構成 \(\bmod 3\)

的完全剩餘系,所以其他位置怎麼填都可以。

如果填第一位,那麼第五位就會確定,同理。一、二位都有五個數字可以填,所以答案為 \(5×5=25\)

五個數字就是 \(0,1,6,8,9\) 啦!


二.閱讀程式

第十六題

比較簡單,但是最後一個選擇把我弄了。

若輸入的字串長度為(),那麼輸入的字串跟輸出的字串相比,至多有 \(36\) 個字元不同。

\(A. 36\) \(B. 100000\) \(C. 1\) \(D. 128\)

答案為 \(B\)

讀完程式應該大家能夠發現,條件滿足的時候,當前的 \(i\)\(n\) 的約數。

所以我們只要在選項中找到約數個數最多為 \(36\) 的即可。

因為 \(100000 = 2^5×2^5\),所以因數個數為 \(( 5 + 1 ) × ( 5 + 1 ) =36\),也即是判定條件最多滿足 \(36\) 次,所以最多有 \(36\) 個。


第十七題

應該是最簡單的閱讀程式了。

選擇題可以用小資料模擬判斷,還是很好看懂的。


第十八題

還是有點搞不懂,錯挺多的。


三.完善程式

很簡單,不講了/fad。

第十九題比較簡單,按題意模擬即可。

第二十題要注意迴圈中的 \(maxs\)\(n\) 的區別,不要寫反了(就是我)。


四.後言

在繁忙的文化課中還有空做做初賽還是挺歡樂的。

還有 \(12\) 天就輪到 \(CSP\) 的初賽啦!

各位 Rp++!