time limit: 10 sec
memory limit: 128 mb
submit: 596
solved: 266 [
submit][
status][
discuss]
小敏和小燕是一對好朋友。
他們正在玩一種神奇的遊戲,叫minecraft。
他們現在要做乙個由方塊構成的長條工藝品。但是方塊現在是亂的,而且由於機器的要求,他們只能做到把這個工藝品最左邊的方塊放到最右邊。
他們想,在僅這乙個操作下,最漂亮的工藝品能多漂亮。
兩個工藝品美觀的比較方法是,從頭開始比較,如果第i個位置上方塊不一樣那麼誰的瑕疵度小,那麼誰就更漂亮,如果一樣那麼繼續比較第i+1個方塊。如果全都一樣,那麼這兩個工藝品就一樣漂亮。
第一行兩個整數n,代表方塊的數目。
第二行n個整數,每個整數按從左到右的順序輸出方塊瑕疵度的值。
一行n個整數,代表最美觀工藝品從左到右瑕疵度的值。 10
10 9 8 7 6 5 4 3 2 1
1 10 9 8 7 6 5 4 3 2
【資料規模與約定】
對於20%的資料,n<=1000
對於40%的資料,n<=10000
對於100%的資料,n<=300000 [
submit][
status][
discuss]
題解:字尾自動機+map
在原串的後面再接一遍原串,然後建立字尾自動機。查答案的時候在字尾自動機上每次走最小的字元,輸出連續n個即可。
#include#include#include#include#include#include#define n 600003
using namespace std;
int n,m,cnt,nq,np,p,q,last,root;
mapch[n*2];
int fa[n*2],l[n*2],a[n];
void extend(int x) }}
int main()
}
BZOJ 2882 工藝 字尾自動機 map
小敏和小燕是一對好朋友。他們正在玩一種神奇的遊戲,叫minecraft。他們現在要做乙個由方塊構成的長條工藝品。但是方塊現在是亂的,而且由於機器的要求,他們只能做到把這個工藝品最左邊的方塊放到最右邊。他們想,在僅這乙個操作下,最漂亮的工藝品能多漂亮。兩個工藝品美觀的比較方法是,從頭開始比較,如果第i...
BZOJ 2882 工藝 字尾自動機 map
小敏和小燕是一對好朋友。他們正在玩一種神奇的遊戲,叫minecraft。他們現在要做乙個由方塊構成的長條工藝品。但是方塊現在是亂的,而且由於機器的要求,他們只能做到把這個工藝品最左邊的方塊放到最右邊。他們想,在僅這乙個操作下,最漂亮的工藝品能多漂亮。兩個工藝品美觀的比較方法是,從頭開始比較,如果第i...
bzoj2882 工藝(字尾自動機(最小表示法))
原題位址 題意 小敏和小燕是一對好朋友。他們正在玩一種神奇的遊戲,叫minecraft。他們現在要做乙個由方塊構成的長條工藝品。但是方塊現在是亂的,而且由於機器的要求,他們只能做到把這個工藝品最左邊的方塊放到最右邊。他們想,在僅這乙個操作下,最漂亮的工藝品能多漂亮。兩個工藝品美觀的比較方法是,從頭開...