切換
舊版
前往
大廳
主題

ZeroJudge - d472: 算術基本原理 解題心得

Not In My Back Yard | 2018-08-09 14:21:29 | 巴幣 0 | 人氣 188

題目連結:

題目大意:
給定N,表示以下有N行(N ≦ 10000)。以下第i行代表一序列K(K1、K2……)的第i個值(1 ≦ i ≦ N,且值 ≦ 1000);而K1指的是第一個質數(2)的次方項,K2為第二個質數(3)的次方項,以此類推。

求(2 ^ K1) * (3 ^ K2) * (5 ^ K3)……除以76543的餘數。

解題思維:
先建質數表(可以利用埃式篩法等等,參見之前文章程式碼),再利用餘數的性質–—先乘完再取餘數 跟 兩個數先取餘數再相乘再取一次餘數,是等價的。

若怕運算時間太長,可搭配快速冪。參見這裡




此次分享到此為止,如有任何更加簡潔的想法或是有說明不清楚之地方,也煩請各位大大們可以提出來討論。

創作回應

相關創作

更多創作