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

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

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      題解:P13945 [EC Final 2019] King

      更差的閱讀體驗


      我們會發現,如果我們知道了等比數列的公比,問題會容易很多。具體地,如果我們知道等比子序列的開頭元素,然后我們往后掃。假設我們目前等比子序列的最后一個元素是 \(a_i\),公比為 \(m\),則我們往后找到第一個 \(a_j\) 使得 \(a_i \times m = a_j\),那么我們直接把 \(j\) 加入子序列即可。

      但是不知道公比就比較困難。

      關注到答案特殊的輸出格式:只有答案 \(\ge \frac{n}{2}\) 我們才要輸出。這意味著,原來序列中離得很近的兩個元素他們大概率是相鄰的。由于答案 \(\ge \frac{n}{2}\),我們充分發揚人類智慧,先隨機出一個 \(i\),然后以 \(a_{i+1} \times a_{i}^{-1}\) 為公比跑一次,再以 \(a_{i+2} \times a_{i}^{-1}\) 跑一次。

      我們容易發現,一個數字有 \(\frac{1}{2}\) 的概率出現在最長的子序列中,所以我們隨機的正確率為 \(\frac{1}{4}\),隨個 \(\lambda = 100\) 次差不多就對了。

      那么這道題就做完了,復雜度 \(O(\lambda n)\)

      #include<bits/stdc++.h>
      #define int long long
      #define endl '\n'
      #define N 200006
      using namespace std;
      int T,n,MOD,a[N],ans;
      mt19937 rnd(time(0));
      inline int get(){return (((int)rnd())%n+n)%n+1;}
      int qpow(int x,int y=MOD-2)
      {
      	if(y==0)return 1;if(y==1)return x%MOD;
      	int ret=qpow(x,y>>1);return ret*ret%MOD*qpow(x,y&1)%MOD;
      }
      void solve(int x,int y,int m)
      {
      	int ret=2,now=a[x],im=qpow(m);
      	for(int i=x-1;i;i--)
      		if(im*now%MOD==a[i])now=a[i],ret++;
      	now=a[y];
      	for(int i=y+1;i<=n;i++)
      		if(m*now%MOD==a[i])now=a[i],ret++;
      	if(ret*2>=n)ans=max(ret,ans);
      }
      main()
      {
      	scanf("%lld",&T);
      	while(T--)
      	{
      		scanf("%lld%lld",&n,&MOD),ans=-1;
      		for(int i=1;i<=n;i++)scanf("%lld",&a[i]);
      		for(int i=1;i<=100;i++)
      		{
      			int pos=get();
      			if(pos+1<=n)solve(pos,pos+1,a[pos+1]*qpow(a[pos])%MOD);
      			if(pos+2<=n)solve(pos,pos+2,a[pos+2]*qpow(a[pos])%MOD);
      		}
      		printf("%lld\n",ans);
      	}
      	return 0;
      }
      
      posted @ 2025-09-04 17:55  dyc2022  閱讀(11)  評論(0)    收藏  舉報
      /* 設置動態特效 */ /* 設置文章評論功能 */ 返回頂端 levels of contents
      主站蜘蛛池模板: 98精品全国免费观看视频| 亚洲av激情五月性综合| 成人免费xxxxx在线观看| 国产永久免费高清在线| 欧美性受xxxx白人性爽| 一本大道av人久久综合| 亚洲精品中文字幕一区二| 亚洲成人av在线高清| 久播影院无码中文字幕| 新营市| 国产精品妇女一区二区三区 | 鲁一鲁一鲁一鲁一澡| 国产人妻精品午夜福利免费| 欧美一区二区三区激情| 亚洲а∨天堂久久精品2021| 色猫咪av在线观看| 欧美老熟妇喷水| 国产av一区二区三区综合| 亚洲av日韩在线资源| 国产美女被遭强高潮免费一视频| 激情综合五月丁香亚洲| 久久精品女人的天堂av| 日韩成人无码影院| 亚洲国产精品久久一线不卡| 亚洲国产精品老熟女乱码| 国产成人精品一区二区三| 国产在线精彩自拍视频| 精品国产女同疯狂摩擦2| 天堂网亚洲综合在线| 69天堂人成无码免费视频| 久久视频在线视频| 免费看亚洲一区二区三区| 国产老女人免费观看黄A∨片| 福利在线视频一区二区| 国产蜜臀av在线一区在线| 久久亚洲人成网站| 人妻少妇精品视频专区| XXXXXHD亚洲日本HD| 甘德县| 欧美牲交a欧美牲交aⅴ一| 亚洲精品天堂在线观看|