bzoj2875 Noi2012 隨機數生成器

2022-05-21 13:33:09 字數 922 閱讀 8204

(題目鏈結)

求$}$。

矩乘板子,這裡主要講下會爆long long的整數相乘取模,我們用double可以做到$$。

求$$。求出$\rfloor}$,我們用long double搞。那麼最後的答案就是$$,我們直接long long搞,可以視作是在模$}$的意義下運算。什麼鬼嘛。。。

可以long long搞的原因應該是這樣的。 $$與$$不同的位數不會超過long long範圍,所以更高位都是相等的,我們就直接不管好了。

竟然推錯矩陣了×_×

// bzoj2875

#include#include#include#include#include#include#include#define ll long long

#define inf 2147483640

#define pi acos(-1.0)

#define free(a) freopen(a".in","r",stdin),freopen(a".out","w",stdout);

using namespace std;

ll a,m,n,g,c,x0;

ll f[3][3],tmp[3][3],t[3][3];

ll mul(ll a,ll b)

void power(ll b)

for (int i=1;i<=2;i++)

for (int j=1;j<=2;j++) f[i][j]=tmp[i][j];

}b>>=1;

for (int i=1;i<=2;i++)

for (int j=1;j<=2;j++)

for (int i=1;i<=2;i++)

for (int j=1;j<=2;j++) t[i][j]=tmp[i][j];

}}int main()

bzoj2875 Noi2012 隨機數生成器

time limit 10 sec memory limit 512 mb submit 1007 solved 577 submit status discuss 包含6個用空格分割的m,a,c,x0,n和g,其中a,c,x0是非負整數,m,n,g是正整數。輸出乙個數,即xn mod g 11 8...

bzoj2875 Noi2012 隨機數生成器

矩陣快速冪 快速乘即可。總調不出來,然後發現輸出時a寫成b了sadsadsad。include include include includeusing namespace std define rep i,s,t for int i s i t i define clr x,c memset x,...

bzoj2876 Noi2012 騎行川藏

蛋蛋非常熱衷於挑戰自我,今年暑假他準備沿川藏線騎著自行車從成都前往拉薩。川藏線的沿途有著非常美麗的風景,但在這一路上也有著很多的艱難險阻,路況變化多端,而蛋蛋的體力十分有限,因此在每天的騎行前設定好目的地 同時合理分配好自己的體力是一件非常重要的事情。由於蛋蛋裝備了一輛非常好的自行車,因此在騎行過程...