日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【题解】SDOI2008莎拉公主的困惑

發布時間:2024/4/14 编程问答 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【题解】SDOI2008莎拉公主的困惑 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

挺有趣的恩:洛谷P2155

在紙上打打草稿,寫出n!個數,從先往后,遇到不互質的就篩掉——發現一個奇妙的性質!:篩掉的次數、順序好像是周期性出現的呢~

而且更加妙妙的是,好像還是m!一輪..那么因為n!一定能被m!整除,所以問題轉變為:(n!\m! - 有多少個循環節)*(φ(m))。

接下來,φ(m) = m!*(1 - 1/p1)*(1 - 1/p2)...任務就只剩下打出階乘表&逆元啦。離線的處理會快很多。

#include <bits/stdc++.h> using namespace std; #define maxn 10000050 #define ll long long #define int long long int maxx, now = 1, P, T, tot, inv[maxn], ans[10050], pri[maxn],fac_a[maxn], fac_b[maxn], fac_c[maxn]; bool is_prime[maxn]; struct query {int n, m, id, pri; }Q[10050];int read() {int x = 0;char c;c = getchar();while(c < '0' || c > '9') c = getchar();while(c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();return x; }bool cmp1(query a, query b) {return a.m < b.m; }int Get_Pri(int n) {for(int i = 2; i <= n; i ++){if(!is_prime[i]){pri[++ tot] = i;while(now <= T && pri[tot] > Q[now].m){Q[now].pri = tot - 1;now ++;} }while(now <= T && i == n){Q[now].pri = tot;now ++;}for(int j = 1; j <= tot; j ++){if(i * pri[j] > n) break;is_prime[i * pri[j]] = 1;if(!(i % pri[j])) break;}} }int Get_fac(int n) {fac_a[0] = fac_a[1] = fac_b[0] = fac_b[1] = fac_c[0] = fac_c[1] = 1;inv[0] = inv[1] = 1;for(int i = 2; i <= n; i ++){fac_a[i] = (fac_a[i - 1] * i) % P;inv[i] = ((P - P / i) * inv[P % i]) % P;}for(int i = 1; i <= tot; i ++){fac_b[i] = inv[pri[i]];fac_b[i] = (fac_b[i] * fac_b[i - 1]) % P;fac_c[i] = pri[i] - 1;fac_c[i] = (fac_c[i] * fac_c[i - 1]) % P;} }signed main() {T = read(), P = read();for(int i = 1; i <= T; i ++){Q[i].n = read(), Q[i].m = read(), Q[i].id = i;maxx = max(maxx, max(Q[i].n, Q[i].m));}sort(Q + 1, Q + 1 + T, cmp1);Get_Pri(maxx);Get_fac(maxx);for(int i = 1; i <= T; i ++)ans[Q[i].id] = ((fac_a[Q[i].n] * fac_b[Q[i].pri]) % P * fac_c[Q[i].pri]) % P;for(int i = 1; i <= T; i ++)printf("%lld\n", ans[i]);return 0; }

?

轉載于:https://www.cnblogs.com/twilight-sx/p/8416225.html

總結

以上是生活随笔為你收集整理的【题解】SDOI2008莎拉公主的困惑的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久久久亚洲av无码网站 | 超碰美女 | 香蕉视频一区二区 | 天天射天天干天天 | 黑人欧美一区二区三区 | 黄色一级在线视频 | 精品久久一区 | 日韩福利在线播放 | 免费av看片 | 欧美狠狠干 | 五月激情六月 | 黄色一及片| www..com国产| 天天射天天射 | 99热在线免费观看 | 中文字幕自拍偷拍 | 国产又黄又粗 | 99久久人妻无码精品系列 | 一起操网址 | 一区二区在线观看免费 | 成人免费性视频 | 日本色图片| 欧美春色 | 小箩莉末发育娇小性色xxxx | 在线视频天堂 | av成人资源 | 无套内谢少妇毛片 | 女人喂男人奶水做爰视频 | 中文字幕国产日韩 | 国产激情视频在线观看 | 少妇无码一区二区三区 | 精品动漫一区二区三区的观看方式 | 成人黄色大全 | 日韩精品免费一区二区夜夜嗨 | 久久综合精品国产二区无码不卡 | 在线观看成人一区 | 国产全是老熟女太爽了 | 快射视频网站 | 情侣黄网站免费看 | 久久99久久99 | 欧美日韩国产成人 | eeuss一区| 毛片毛片毛片毛片毛片毛片 | 天天射夜夜撸 | 色偷偷五月天 | 欧美a在线看| 91日日夜夜 | 午夜精品福利一区二区 | 人妻巨大乳hd免费看 | 日韩成人短视频 | 蜜桃传媒一区二区亚洲av | 国产日韩久久 | 黄wwwww | 国产又粗又猛视频 | 醉酒壮男gay强迫野外xx | 欧美性做爰免费观看 | 99青青草 | 午夜合集 | 国产欧美久久久 | 免费污片在线观看 | 午夜av电影在线观看 | 日韩综合精品 | 毛片在线看片 | 强伦人妻一区二区三区 | 乳孔很大能进去的av番号 | 久久蜜桃av | 手机av免费观看 | 欧美亚洲一级片 | 欧美综合一区二区 | 牲欲强的熟妇农村老妇女视频 | 久久亚洲成人 | 色综合久久88色综合天天6 | 国产激情一区二区三区在线观看 | 免费在线观看的黄色网址 | 亚洲视频欧洲视频 | 亚洲欧美日韩在线一区二区 | 欧美裸体xxxx极品少妇 | 国产a精品 | 91免费网站 | 久久国产片 | 高清二区 | 欧美色老头| 超碰在线视屏 | 一区二区免费av | 日韩在线视频免费 | 欧美日韩在线视频一区二区三区 | 性xxxx欧美老肥妇牲乱 | 国产又黄又骚 | 国产一区二区视频免费在线观看 | 久久久久久黄色片 | 91美女片黄在线观看游戏 | 亚洲精品久久一区二区三区777 | 成人学院中文字幕 | 亚洲国产精品一区二区久久hs | 欧美黑人添添高潮a片www | 美女福利视频在线观看 | 午夜激情福利电影 | 看黄色小视频 | 裸体裸乳被免费看视频 |