Codeforces Round #281(Div. 2)

A. Vasya and Football

題目大意:

       一場足球比賽,總共發了n張牌(黃牌警告,紅牌罰下)。兩黃變一紅,問被罰下人員的名字,號碼以及第一次被罰下的時間。

題解:

       模擬。由於每一隊最多隻有99人,n也小於等於90,所以直接開數組模擬每個人得牌情況即可。注意此題已經被罰下的人仍有可能得牌,而只詢問第一次被罰下的時間。

B. Vasya and Wrestling

題目大意:

       兩人摔跤。給出n個回合的得分情況(正爲第一個人得分,負爲第二個人得分),判斷誰勝誰負,如果兩人得分相同,算得分序列字典序大的贏。如果得分序列也完全一樣,那麼誰最後一個回合贏誰就贏得這場比賽。

題解:

       模擬。模擬得分情況,記錄得分序列。如果同分比較掃一遍判斷字典序大小即可。

C. Vasya and Basketball

題目大意:

       兩個人投籃,分別給出他們每個球投籃距籃筐的距離。現在讓你確定三分線(三分線距離以內的算2分,大於三分線距離的算3分),使得第一個人得分減去第二個人得分的結果儘量大,如果結果一樣輸出第一個人得分最多的分數比。

題解:

       模擬。在最優解中,使最優解的三分線距離減少到兩個人中小於三分線且距離三分線最近的那個距離,答案不會發生變化。於是將兩個人的距離放在一起排序。(在開始加一個距離0)從頭掃到尾,依次以掃到的距離作爲三分線,然後更新答案即可。

D. Vasya and Chess

題目大意:

       n * n的棋盤,左下角(1,1)是白色的皇后(國際象棋中皇后,可吃上下左右和對角線),右下角(1, n)是黑色的皇后,其餘的格子是綠色的士兵。白色先手,黑色後手,每一步必須吃掉一個與自己顏色不同東西,誰不能走了或者被吃掉了就輸,判斷誰勝誰負。

題解:

       博弈。如果n爲奇數,則先手怎麼走,後手和他走“對稱棋”則必勝。如果n爲偶數,則先手第一步往右走一步到(1, 2),之後他變爲“後手”走“對稱棋”即必勝。

E. Vasya and Polynomial

題目大意:

       P(x)爲所有係數都爲非負的關於x的多項式,輸入t,a,b問滿足P(t) = a, P(a) = b的多項式有多少個。答案模1e9 + 7。

題解:

       數學。此題模數爲嚇唬人的。因爲P(t) = a,多項式係數都非負,所以滿足條件的多項式每一項係數都大於等於0,小於a。由於P(a) = b, 那麼滿足條件的多項式的係數可看爲b的a進製表示,而一個數的a進製表示只有一種。只需將此已確定係數的多項式驗證是否滿足P(T) = a即可。注意一些特殊情況。如果a = b那麼常值函數也可。當t = a = b = 1時答案爲inf。還有一些諸如t=1, a=1, b=1的情況需要考慮清。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章