牛客練習賽35A C題總結

2021-09-05 19:14:26 字數 2375 閱讀 3638

1.題目描述:

2.解題思路

\hspace

首先,看清二進位制整數的概念,二進位制整數是2的k次方,k為正整數。所以1不是。那麼1,2,3也就不會是二進位製半整數。

\hspace

從4開始,如果乙個數是2的n次方,n>=2,那麼它一定可以拆成兩個相等的二進位制整數,即它是二進位製半整數。

\hspace

還有一種情況,兩個二進位制整數不相等,那麼較小的那個二進位制整數一定是較大的二進位制整數的約數。即n=min(1+max/min)。min和max/min也都是二進位制整數。所以演算法可以先一直整除2得到(1+max/min),再減去1,再繼續整除2。

注意:min不能等於1。所以在**中加入乙個變數判斷是否min等於1。

時間複雜度為o(log⁡2

1.題目描述

2. 解題思路

\hspace

可以發現,這是乙個動態規劃問題。有四種轉移狀態:

\hspace

1. 上乙個狀態(n-1)的最後乙個元素是母音轉移到當前狀態(n)的最後一元素還是母音。

\hspace

2. 上乙個狀態(n-1)的最後乙個元素是母音轉移到當前狀態(n)的最後一元素是子音。

\hspace

3. 上乙個狀態(n-1)的最後乙個元素是子音轉移到當前狀態(n)的最後一元素還是子音。

\hspace

4. 上乙個狀態(n-1)的最後乙個元素是子音轉移到當前狀態(n)的最後一元素是母音。

\hspace

即:\hspace

vowel[i][j] = vowel[i-1][j-1]*5;

\hspace

consonant[i][1] = (vowel[i-1][1]+vowel[i-1][2]+…+vowel[i-1][a])*21 ;

\hspace

consonant[i][j] = consonant[i-1][j-1]*21;

\hspace

vowel[i][1] = (consonant[i-1][1]+consonant[i-1][2]+…+consonant[i-1][b])5 ;

\hspace

時間複雜度為 o(n(a+b))

1.題目描述

2.解題思路

\hspace

注意到這兩個函式都對233取餘了,所以a從第一步操作以後都是小於233的。因此,我們可以先借助233

∗233

233*233

233∗23

3的輔助空間來預處理下。定義個233

∗233

233*233

233∗23

3個矩陣gf,gf[i][j]的值代表數i能否轉換到數j,如果不能就為乙個很大的值,如果可以,就是轉換的次數。

\hspace

處理每個樣例的時候。當a和b相等時,直接輸出0;當b大於等於233時,肯定不能轉換,輸出-1;當a大於等於233時,先對進行取餘操作。由於不知道先進行f(a)還是g(a)操作,可以比較下第一步操作後到達b的次數誰最小,取最小的那個值,再加1(即加上第一步操作)。

預處理的時間複雜度為:o(233233233)。空間複雜度為o(233*233)

每個樣例的時間複雜度為o(1).

最後:a-c題的**已上傳到我的github上:牛客練習賽35

牛客練習賽76題解 A,C

思路 爆搜,列舉物件 乙個小組內所有人對遊戲的了解程度之和。之後判斷每個方案,在可行前提下的組數,取min即可 注 在m m 1 m m 1 m m 1 處除以2也可以,就不用逆元了 include include include include include include include in...

牛客練習賽40A題

題目描述 作為這命運劇場永遠的觀眾,小d一直注視著這片星光璀璨的舞台,舞台上,少女們的身姿演繹出了一幕幕動人的場景,令人回味無窮。有的時候,小d也會自己寫一些歌曲,來加入starlight的劇本,使得劇本充滿了新的生命力。現在小d又要準備寫樂譜了,小d寫譜的方式比較獨特。他會先寫出乙個按照音符出現順...

牛客練習賽65水題

powered by ab in 局外人 純模擬題。mod 998244353 n int input s list map int input split s.sort if n 1 lst s n 2 1 tmp s n 2 1 ans 1for i in tmp ans ans i mod p...