<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12
      博客園 首頁 私信博主 顯示目錄 隱藏目錄 管理 動畫

      LOJ. 162. 快速冪2(快速冪)

      題目鏈接


      \(Description\)
      給定\(x,T\)\(T\)次詢問,每次給定\(k\)\(x^k\% 998244352\)
      \(x,k\lt 998244352,\ T\leq 5\times10^6\)

      \(Solution\)
      做法1:
      直接快速冪就行了。沒過的是\(5e6\)還沒用快讀的(所以時限應該改0.5s)。

      做法2:
      常規以\(2\)為底的快速冪:\(x^n=x^{\lfloor\frac{n}{2}\rfloor\times2}\times x^{n\%2}\)
      同理可以改成以\(3\)為底:\(x^n=x^{\lfloor\frac{n}{3}\rfloor\times3}\times x^{n\%3}\)。(但是不能位運算優化,不如常規寫法)

      int FP(LL x,int k)
      {
      	LL t=1;
      	for(; k; k/=3,x=x*x%mod*x%mod)
      		if(k%3==1) t=t*x%mod;
      		else if(k%3==2) t=t*x%mod*x%mod;
      	return t;
      }
      

      同理可以改成以任意數\(k\)為底:\(x^n=x^{\lfloor\frac{n}{k}\rfloor\times k}\times x^{n\%k}\)
      \(k=\sqrt{mod}\),則只需預處理\(x^0,x^k,x^{2k},...,x^{\lfloor\frac{mod}{k}\rfloor\times k}\),以及\(x^0,x^1,...,x^{k-1}\),復雜度\(O(k)\)
      詢問就是\(O(1)\)的了。

      細節:最好取\(k=\sqrt{mod}+1\)?應該問題不大但是基本都加了\(1\)。。


      //308ms	1.0Mb
      #include <bits/stdc++.h>
      #define pc putchar
      #define MAXIN 300000
      #define gc() getchar()
      //#define gc() (SS==TT&&(TT=(SS=IN)+fread(IN,1,MAXIN,stdin),SS==TT)?EOF:*SS++)
      #define pb emplace_back
      #define mod 998244352
      typedef long long LL;
      const int N=1e5+5,K=(int)(sqrt(mod))+1;
      
      int A[N],B[N];
      char IN[MAXIN],*SS=IN,*TT=IN;
      
      inline int read()
      {
      	int now=0,f=1; char c=gc();
      	for(;!isdigit(c);c=='-'&&(f=-1),c=gc());
      	for(;isdigit(c);now=now*10+c-48,c=gc());
      	return now*f;
      }
      int FP(LL x,int k)
      {
      	LL t=1;
      	for(; k; k>>=1,x=x*x%mod)
      		if(k&1) t=t*x%mod;
      	return t;
      //	LL t=1;
      //	for(; k; k/=3,x=x*x%mod*x%mod)
      //		if(k%3==1) t=t*x%mod;
      //		else if(k%3==2) t=t*x%mod*x%mod;
      //	return t;
      }
      
      int main()
      {
      	LL x=read(),xk=FP(x,K);
      	A[0]=B[0]=1;
      	for(int i=1,cnt=mod/K; i<=cnt; ++i) A[i]=A[i-1]*xk%mod;
      	for(int i=1; i<K; ++i) B[i]=B[i-1]*x%mod;
      
      	for(int T=read(),n; T--; )
      		n=read(), printf("%d ",int(1ll*A[n/K]*B[n%K]%mod));
      
      	return 0;
      }
      
      posted @ 2021-03-06 17:38  SovietPower  閱讀(260)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 亚洲人成网站观看在线观看| 97成人碰碰久久人人超级碰oo| 大又大又粗又硬又爽少妇毛片| 亚洲综合伊人久久大杳蕉| 性少妇tubevⅰdeos高清| 中文人妻熟妇乱又伦精品| 亚洲综合一区二区三区不卡| 福利网午夜视频一区二区| 国产国拍精品av在线观看| 欧美日韩精品一区二区三区高清视频 | 青青草成人免费自拍视频| 国产一级老熟女自拍视频| 丁香婷婷在线观看| 午夜AAAAA级岛国福利在线| 黑人巨大亚洲一区二区久| 4hu四虎永久在线观看| 老师扒下内裤让我爽了一夜| 中文字幕乱妇无码AV在线| 国产精品免费看久久久| 四虎库影成人在线播放| 亚洲成a人无码av波多野| 免费无码一区无码东京热| 亚洲熟妇无码另类久久久| 亚洲性日韩精品一区二区| 国产精品剧情亚洲二区| 久久久精品2019中文字幕之3| 精品无码人妻| 色久综合色久综合色久综合| 69精品丰满人妻无码视频a片| 开心五月婷婷综合网站| 久久国内精品自在自线91| 激情内射亚州一区二区三区爱妻| 青青草无码免费一二三区| 东京热大乱系列无码| 毛片av中文字幕一区二区| 国产999久久高清免费观看| 成人av一区二区亚洲精| 99久久精品久久久久久婷婷 | 中国少妇无码专区| 日本高清不卡一区二区三| 国产精品一区在线蜜臀|