\(1\leq n,k \leq 10^9\)
集合s中每個元素互不影響,不妨依次考慮其中乙個元素在三角形中的出現情況
問題轉化為乙個\(0/1\)的三角形\(\\}\),用\(0\)表示選了,\(1\)表示沒選,那麼如果\(a_\)為\(1\),則\(a_\)左邊和上邊都是\(1\)
考慮\(n\)比較小的情況,可以dp
\(f_i\)表示乙個\(i*i\)的三角形的方案數
對於\(f_i\),第\(i\)行一定是一段\(1\)和一段\(0\)拼起來,列舉\(1\)的長度\(j\),前\(j\)列的元素都必須選\(1\),其他列除去第\(i\)行構成乙個長為\((i-j-1)\)的三角形,填法為\(f_\)種
最後加上是第\(i\)行全選\(1\)的情況,只有\(1\)種
\(f_i=1+\sum_^f_=1+\sum_^f_j\)
\(f_0=1\)
不妨令\(s_i=\sum_^if_j\)
原式\(f_i=1+s_\)即\(s_=f_i-1\)
則有\(s_i-s_=(f_-1)-(f_i-1)\)
即 \(f_i=f_-f_\)
\(f_=2*f_i\) 且\(f_0=1\)
得\(f_n=2^n\)
\(ans=^k=2^\)
#include#include#include#define int long long
using namespace std;
const int mod=1000000007;
int n,k;
inline int qpow(int x,int k)
return s;
}signed main()
小店購物 JSOI2008 BZOJ 2260
grant是乙個個體戶老闆,他經營的小店因為其豐富的優惠方案深受附近居民的青睞,生意紅火。小店的優惠方案十分簡單有趣。grant規定 在一次消費過程中,如果您在本店購買了精製油的話,您購買香皂時就可以享受2.00元 塊的 如果您在本店購買了香皂的話,您購買可樂時就可以享受1.50元 聽的 諸如此類的...
BZOJ 4327 JSOI2012 玄武密碼
字尾自動機裸題。藉著這道裸題總結一下字尾自動機的查詢問題。1.查字首 查詢時不跳parent,遇到空節點就跳出。2.查子串 查詢時跳parent,記錄最大ans.3.查次數 lct維護right陣列 4.查不同的串的數目 在建樹時維護,乙個點對答案的貢獻為this max len this pare...
JSOI2009 bzoj1449 球隊收益
description input output 乙個整數表示聯盟裡所有球隊收益之和的最小值。首先假設全輸,然後給每場比賽分配乙個贏家,每個隊伍每多贏一場多獲得的收益作為費用。但是有乙個問題,如何保證每次走的是對應的邊?也就是,如何保證贏第一場的時候增加的收益是贏一場減贏零場,而不是贏兩場減贏一場?...