通道
題意:求所有回文按長度排序後,前k個奇數長度的子串乘積之和。
思路:len[i]代表長度為i的有多少個子串,避免超時,樹狀陣列維護即可
**:
#include #includeview code#include
using
namespace
std;
typedef
long
long
ll;const
int max_n = 1200005
;const
int sig = 26
;const
int n =max_n;
struct
bit
void
add(ll i, ll v)
}ll query(
inti)
}};bit b;
struct
ptree
void
init()
int getfail(int
x)
void add(int
c) last =nxt[cur][c];
++cnt[last];
}
void
count()
};const ll mod =19930726ll;
ptree a;
ll n, m, len[max_n];
char
s[max_n];
ll pow(ll x, ll n)
return
ret;
}int
main()
len[
1] = b.query(1
);
for (int i = 2; i <= n; ++i) len[i] = b.query(i) - b.query(i - 1
);
for (int i = n; m && i > 0; --i)
else
}if (m > 0) ans = -1
; printf(
"%lld\n
", ans);
return0;
}
BZOJ 2160 拉拉隊排練 回文自動機
給出乙個n 1 e6 n leq1e6 n 1e 6的字串,還有乙個詢問k kk,現在要求前k kk個長度從打到小奇數長度的回文串的長度乘積。不足k kk個就輸出 1 1 1。直接回文樹全部找出來排序,統計個數。個數夠的話直接快速冪計算。includeusing namespace std type...
bzoj 2160 拉拉隊排練 回文自動機
description 艾利斯頓商學院籃球隊要參加一年一度的市籃球比賽了。拉拉隊是籃球比賽的乙個看點,好的拉拉隊往往能幫助球隊增加士氣,贏得最終的比賽。所以作為拉拉隊隊長的楚雨蕁同學知道,幫助籃球隊訓練好拉拉隊有多麼的重要。拉拉隊的選拔工作已經結束,在雨蕁和校長的挑選下,n位集優秀的身材 舞技於一體...
BZOJ2160拉拉隊排練 回文自動機
艾利斯頓商學院籃球隊要參加一年一度的市籃球比賽了。拉拉隊是籃球比賽的乙個看點,好的拉拉隊往往能幫助球隊增加士氣,贏得最終的比賽。所以作為拉拉隊隊長的楚雨蕁同學知道,幫助籃球隊訓練好拉拉隊有多麼的重要。拉拉隊的選拔工作已經結束,在雨蕁和校長的挑選下,n位集優秀的身材 舞技於一體的美女從眾多報名的女生中...