2020牛客國慶集訓派對day4 補題

2021-10-09 23:36:54 字數 1489 閱讀 5454

2020牛客國慶集訓派對day4

b

題意:題意:求最長等差序列的長度。

dp:攤派了我講不明白,參考下這兩篇部落格吧(捂臉)

傳送門1

傳送門2

#include

#include

#include

#include

#include

#include

#include

using

namespace std;

typedef

long

long ll;

const

int maxn =

5e3+7;

int arr[maxn]

;int dp[maxn]

[maxn]

;int

main()

} cout

}

f

what goes up must come down 傳送門

j

題意:右邊有n個數,從1到n, 現在把他們之間的空格去掉得到左邊的字串, 現在給出左邊的字串,求右邊分隔開的數列。

先計算n的值,如果字串長度<= 9,那麼所有字元應該要獨自輸出,字串長度》 9 說明存在兩位的數,那麼n = (lenth - 9) / 2 + 9然後用dfs列舉所有可能序列,當前一步可以把它自己當作乙個數字也可以與後一位結合成乙個兩位數,再找到乙個之後不再繼續尋找,其實我剛開始感覺dfs會爆,因為完全跑完複雜度會是 o(2n),但是一想,只需要找第乙個滿足條件的序列就可以,而且還有剪枝,一般是不會爆

**

#include

#include

#include

#include

#include

#include

#include

using

namespace std;

typedef

long

long ll;

const

int maxn =

250000+10

;bool vis[51]

, flag;

char p[

100]

;int arr[51]

,cnt,n,len;

void

dfs(

int i )

if(i == len -1)

}else

x =(p[i]

-'0')*

10+ p[i +1]

-'0';if

(!vis[x]

&& x <= n)}}

intmain()

return0;

}

2020牛客國慶集訓派對day5

題目ab cdef ghij ksolved 比賽時通過 賽後通過 比賽時嘗試了未通過 比賽時未嘗試 solved by sstee1xd.3 31 7 題意 問你在1 n 1 n1 n中有多少個數字在k kk進製與 k k k進製表示下結果相同。題解 轉換一下就是要求正負進製下只有奇數字有數字的數...

2020牛客國慶集訓派對day3(補題)

補題j flowers 題目鏈結 tot 為花的貢獻和 本題給出資料n,m,n為花卉種類,m為每束花應該有m種,check中的x為x束花,假設有x束花,則應該有xm朵花,在n種花中,check過程 如果a i x則說明花的數量大於花束的數量,這種花可以用在每一種,而且還多出來,tot中加上x,反之第...

牛客國慶集訓派對Day1

a 看樣例過題 include include include include include using namespace std typedef long long ll typedef pairpii const int maxn 1e5 10 vectorg maxn int a 10 i...