hdu 5687 百度之星2016 C

2021-07-11 22:20:45 字數 349 閱讀 7646

思路:字首樹的使用

之前似乎很少寫過字首樹,練習下

借鑑一篇部落格上的**,but他的**是錯的啊。。。。 坑了我好久, 坑就是刪除的時候要先查詢出該字首有多少串可以匹配,設該值為num,刪除過程中中間經過的點要減去這一num,最後乙個點v置0,並且next陣列全部賦值為-1

#include #include #include using namespace std;

struct note

};note l[1200500];

int tot=0;

void add(char s,int len)

{ int now=0;

for(int i=0;i

2016百度之星 Problem B

度熊面前有乙個全是由1構成的字串,被稱為全1序列。你可以合併任意相鄰的兩個1,從而形成乙個新的序列。對於給定的乙個全1序列,請計算根據以上方法,可以構成多少種不同的序列。input 這裡包括多組測試資料,每組測試資料報含乙個正整數nn 代表全1序列的長度。1 n 2001 n 200 output ...

2016 百度之星 複賽 拍照

小明在旅遊的路上看到了一條美麗的河,河上有許多船隻,有的船隻向左航行,有的船隻向右航行。小明希望拍下這一美麗的風景,並且把盡可能多的船隻都完整地拍到一張 中。小明位於河的邊上,並且可以在河邊的任意位置進行拍照,照相機的視野恰好為90度角,只能以垂直於河邊的方向進行拍照。河上的船隻全都可看作是平行於河...

HDU 5698 瞬間移動 百度之星2016

傳送門 hustoj 傳送門 hdu 中文的,有圖,開源網頁吧。m行n列,每次至少往右走一步 往下走一步,所以一共往右走n 1格,往下走m 1格。所以最多走min m 1,n 1 次。往右走往下走的次數相等,所以把m 1和n 1分別拆成k個數的和。k從1取到min m 1,n 1 拆數用隔板法組合。...