#2259. 3264. Fib

3264. Fib

#3264. Fib

题目描述

在一个阴冷的夜晚,聪明的小Y回到了三国时代,这是他梦寐以求想要到达的时代。他来到了一个名曰三重镇的地方,在这个小镇的门口,他看见了首长。首长要求他给出进入小镇的通关密码。

通关密码由两部分组成,由于一些诡异的原因,它们的计算都依赖于一个函数F.

image

通关密码的第一部分是一个函数G。

给定函数G(a,b,n,p),定义如下:

image

通关密码的第二部分是一个函数H.

给定函数H(n),定义如下:

H(1)=F(c^d)

H(n)=H(n-1)^f(c^d)

当你计算出了H和G后,通关密码也就浮出水面了。

最后的通关密码如下所示:

((H(m) mod q)*G(a,b,n,p))^2 mod M

现在,小Y向你求助。你的任务就是帮助他计算出这个通关密码,否则……你将和小Y一起受到首长的审判。

注意:在第二张图片中,描述 G(a, b, n, p) 的式子里有两个 2 F(n),都应该改为 2 F(n + 1)

输入格式

每个测试点有若干组数据。

每组数据一行,一行依次为九个整数a,b,n,p,c,d,m,q,M

输出格式

每组数据输出一行,每行输出整数,为最后答案。

样例

样例输入

45060610 18752779 3 84732859 3 3 681333 129 632645608  

11471798 17317802 8 44535607 7 3 847749 277 540541577  

1875470 284505 9 2381651 7 5 890291 200 413141273  

40160162 2604524 10 82886393 1 5 294503 255 695547562  

56660246 59682524 10 59978983 5 3 411521 68 858119089  

33788108 43618184 9 75780907 5 3 718429 76 412293725  

12907969 16598067 6 19930843 7 1 979008 209 417203329  

42974584 54976899 3 67136551 4 6 104941 42 845364347  

4335596 1710083 5 6810263 7 3 929019 290 26807149  

3354401 6896271 5 31175233 1 4 197763 197 824125328  

5083697 9311265 1 86249521 5 3 416564 132 448188429  

5163372 1927245 1 9923747 2 2 882917 201 82288053  

24279309 29928975 9 35206547 5 5 13213 181 590631537  

3985641 1437240 3 33697243 6 5 690823 157 191065249  

10152964 8899799 8 27589229 3 3 931641 213 82068220  

40982887 33478308 1 54279377 7 6 703865 94 639444379  

24171099 21577049 1 35974987 10 3 994569 295 552456417  

28712393 31802540 5 35459717 5 5 170689 168 534370369  

1883952 2617730 3 4360171 1 3 308955 89 110855997  

63733 331779 1 1401977 9 5 719201 198 432340401  

36777506 57226864 10 59677903 3 4 566603 151 558644334  

69808604 4279044 5 96645881 1 5 700993 193 946861303  

47419399 21519505 9 60152441 7 3 679989 73 421363297  

10886509 30699814 1 40071061 6 4 347529 214 566205591  

15125363 46605946 5 51085891 3 2 97654 274 923809477  

49769245 3379031 3 92060959 6 6 221243 67 687710785  

6372713 1542613 10 22462051 5 5 865249 125 316014163  

21613597 6533757 1 29453063 6 1 423623 250 150093121  

21559540 43037178 5 53950703 4 5 519209 269 852743752  

24468568 37135633 5 49658711 7 1 462015 133 959869912  

45933297 35218178 3 85643387 4 6 741541 49 531671271  

20910501 22743181 5 52854719 6 1 32145 144 308001  

843719 854106 1 2739733 6 3 883985 219 678242157  

55237955 51984542 5 95099929 1 1 877025 208 806864847  

30663096 22690033 3 55149767 10 3 179113 181 992417646  

21851576 36286348 10 39651641 1 1 655963 283 49585921  

80945322 51658726 9 91886843 8 6 648570 2 774853178  

42714047 44626502 6 63280031 9 6 479175 105 816604617  

48249182 60920321 8 64350233 1 5 101062 263 397316619  

4565141 12919795 1 14032787 5 3 982647 97 307574260  

3016917 21219426 3 80791687 3 4 464749 193 778962812  

66165874 69099737 6 76538359 9 1 975041 239 586699857  

4450626 13939371 9 22489937 9 1 905725 28 290184533  

5851519 34693563 6 83026921 3 3 383529 65 894683051  

279616 760249 4 1088987 8 3 741871 293 145043305  

15129679 31339920 1 58198069 9 4 856373 245 498830521  

20393706 4487958 1 26310187 7 6 560161 198 33166361  

7558489 23477403 1 33274727 3 2 901537 93 188526258  

78844260 69521307 5 98827529 7 1 803619 225 448012527  

25162995 31824613 9 45046051 3 5 223709 154 400366641  

样例输出

0  

0  

0  

0  

0  

0  

0  

718779931  

14892616  

206243444  

373973076  

0  

484156581  

55198689  

0  

0  

0  

0  

28289038  

0  

0  

0  

0  

0  

850697223  

624621310  

0  

0  

0  

266521000  

0  

0  

0  

178171831  

0  

0  

0  

609693982  

81465832  

0  

0  

0  

0  

0  

0  

285177193  

0  

2692584  

0  

257250673  

数据范围与提示

题 解http://pan.baidu.com/s/1o7scREE

1 <= a, b < p, 1 <= n <= 2*10^9, 1 <= p <= 10^9, p 是奇质数, 1 <= c, d, m, M < 2^64, 1 <= q <= 300