[bjoi2019]勘破神機
推式子好題
m=2,斐波那契數列,$f_$項
不妨$++l,++r$,直接求$f_n$
求$\sum c(f_n,k)$,下降冪轉化成階乘冪,這樣都是多項式了,方便交換求和號
最後面的斐波那契數列用通項公式求。二項式展開。
交換求和號之後,列舉i,j 最後一項是等比數列求和。
n為奇數是0
n是偶數時,令n=n/2 遞推公式:$g_n=4\times g_+g_$
證明:列舉從後往前第乙個完全分出的塊,除了塊長為2的方案額外多乙個外,其它都是兩種。$g_n=g_+2\times \sum_^ g_$
再寫出:$g_=g_+2\times \sum_^ g_$兩式做差移項即可得到。
用特徵方程可以解得$g_n$的通項公式
$\sqrt 5$在mod 998244353下不存在,可以用$a+b\sqrt5$形式表示
注意,等比數列求和:$1+q+....+q^n=\frac}$注意是n+1,因為有n+1項
#include#define reg register int#define il inline
#define fi first
#define se second
#define mk(a,b) make_pair(a,b)
#define numb (ch^'0')
using
namespace
std;
typedef
long
long
ll;template
il void rd(t &x)
template
il void output(t x)
template
il void ot(t x)
template
il void prt(t a,int st,int nd)
namespace
miracle
int mul(int x,int
y)ll qm(ll x,ll y)
return
ret;
}int inv[1000000+5
];int ni(int
x)struct
po po(
int aa,int
bb) po friend
operator +(po a,po b)
po friend
operator -(po a,po b)
po friend
operator ~(po a)
po friend
operator -(po a)
po friend
operator *(po a,po b)
po friend
operator *(po a,int
c) po friend
operator /(po a,po b)
void
op()
}a,b,x,y,mi[n][4];
po qm(po x,ll y)
return
ret;
}po calc(po q,ll n)
po tmp=q;tmp=qm(tmp,n+1
); tmp=-tmp;tmp.a=ad(tmp.a,1
); q=-q;q.a=ad(q.a,1
);
//q=~q;
return tmp*(~q);
}int
s[n][n],c[n][n];
intmain()
if(m==2
)
else
mi[0][0]=mi[0][1]=mi[0][2]=mi[0][3]=po(1,0
);
for(reg i=1;i<=502;++i)
s[0][0]=1
;
for(reg i=1;i<=502;++i)}c[
0][0]=1
;
for(reg i=1;i<=502;++i)
}ll l,r,k;
while(t--)
if((k-i)&1) tmp=-tmp;
ans=ans+(tmp*s[k][i]);
}for(reg i=1;i<=k;++i) ans=ans*inv[i];
ans=ans*qm((r-l+1)%mod,mod-2
);
printf(
"%d\n
",ans.a);
}else
if((k-i)&1) tmp=-tmp;
ans=ans+(tmp*s[k][i]);
}for(reg i=1;i<=k;++i) ans=ans*inv[i];
ans=ans*qm((r-l+1)%mod,mod-2
);
printf("
%d\n
",ans.a);}}
return0;
}}signed main()
/*author: *miracle*
*/
BJOI2019 光線 遞推
題目鏈結 令 f i 表示光線第一次從第一塊玻璃射出第 i 塊玻璃的比率。令 g i 表示光線射回第 i 塊玻璃,再射出第 i 塊玻璃的比率。容易得到 beginf i f a i f b ig i g i b a i b b ig i a g a i a g b ig i end 對於 2 式,移...
BJOI2019 排兵布陣
今天比賽上這道題好像是人均題呀。好吧,就乙個簡單的,連優化都不需要的揹包dp。我們每次只需要處理在比第i個城堡的第j大的玩家大的情況,不必把所有的兵的情況都處理完。然後就可以 include include include include include include include includ...
BJOI2019 奧術神杖
傳送門 首先w1w2 w3 w nn sqrt n nw1 w2 w3 wn 可以利用對數轉化 l og 2w1w 2w3 wnn 1n l og2w ilog 2 frac sum log 2 w i log2 n w1 w 2 w3 wn n 1 l og2 wi 那麼令ti log2 wi t...