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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

cf1527 c Sequence Pair Weight

發布時間:2023/12/8 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 cf1527 c Sequence Pair Weight 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Problem - C - Codeforces

題目大意:給定一串序列,求出它所有子序列的貢獻度之和

貢獻度:某個字串{1,1,2,2,1}中相同數字的對數{i,j}(i<j,下同)

即{1,2} {3,4} {1,5} {2,5},貢獻度為4

在t了十幾發之后終于切了這題

題解來了:

找出一對{a[i],a[j]},則包含i……j的子串都能被這對{a[i],a[j]}所貢獻,i前面有i-1個數字,j后面有n-j個數字,組合起來一共有i*(n-j+1)種情況是包含i……j的子串,這些字串都能提供一個貢獻值

暴力:雙層for求出每對{a[i],a[j]}的貢獻值,求和

然后第一個T就來了

那在進行優化

我們得到了i*(n-j+1)這個式子,那么當j不變的時候,存在一個或多個i符合條件,則j在后面的所有貢獻值為(i1+i2+……)*(n-j+1)

所以我們考慮用前綴和來維護,將j從后往前搜索,搜到后把前綴和-j然后找下一個j

前綴和要記錄a[j],可是a[j]<=1e9,明顯數組會爆

但是我們高興的發現n只有1e5,這時候我們可以考慮離散化,大于1e5的最小質數是100003,自己創建一種規則來把這些數字塞到數組里

我們考慮建一個二維數組,第一排記離散化前的數字,第二排記前綴和

思路大致就完成了

下面是代碼

#include<bits/stdc++.h> using namespace std; long long t[100005],k[100010][3];//t存序列,k是離散化 int main() {std::ios::sync_with_stdio(false);cin.tie(NULL);long long n,a,i,z,y;cin>>n;while(n--){cin>>a;if(a==2){for(i=1;i<=a;i++) {cin>>t[i];}if(t[1]==t[2]) cout<<1<<"\n";else cout<<0<<"\n";continue;}if(a==1) {cin>>t[1];cout<<0<<"\n";continue;}memset(k,0,sizeof(k));memset(t,0,sizeof(t));y=0;for(i=1;i<=a;i++) {z=0;cin>>t[i];if(t[i]<100003){while(k[(t[i]+z)%100003][1]!=t[i]&&k[(t[i]+z)%100003][1]!=0)//離散化{z++; }k[(t[i]+z)%100003][1]=t[i];k[(t[i]+z)%100003][2]+=i;}else{while(k[(t[i]%100003+z)%100003][1]!=t[i]&&k[(t[i]%100003+z)%100003][1]!=0){z++;}k[(t[i]%100003+z)%100003][1]=t[i];k[(t[i]%100003+z)%100003][2]+=i;//前綴和}//離散化}for(i=a;i>=2;i--){z=0;while(k[(t[i]%100003+z)%100003][1]!=t[i]){z++;}if(k[(t[i]%100003+z)%100003][1]!=0&&k[(t[i]%100003+z)%100003][2]!=i){y+= (k[(t[i]%100003+z)%100003][2]-i)*(a-i+1);k[(t[i]%100003+z)%100003][2]=k[(t[i]%100003+z)%100003][2]-i; }}cout<<y<<"\n";} }

?

?

總結

以上是生活随笔為你收集整理的cf1527 c Sequence Pair Weight的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 精品日韩中文字幕 | 熟女av一区二区 | 欧美在线va| 欧美xxxx吸乳| jvid在线 | 激情青青草 | 一级黄色片免费播放 | 欧美一级在线 | 在线日韩av | 国内少妇精品 | 中文字幕av高清片 | 少妇3p视频 | 黄色天堂网 | 国产女同在线观看 | 狠狠久久久 | 欧美亚洲综合一区 | 中国在线观看免费高清视频播放 | 日本一级片免费看 | 精品一区二区三区电影 | 国产一区二区视频免费 | 99国产揄拍国产精品 | 欧美老肥妇做.爰bbww视频 | 日本强好片久久久久久aaa | 中文字幕3 | 成人h片在线观看 | 亚洲人成无码www久久久 | 超碰黄色| 91久久在线 | 欧美精品一二 | 天天骑夜夜操 | 成人午夜影片 | 成人黄色激情 | 男女透逼视频 | 久久性生活 | 97超碰人人看 | 国产一区视频观看 | 欧美三级影院 | 日韩色吧 | 亚洲一区二区三区加勒比 | 色婷婷综合五月 | 中国性xxx| 中国一级特黄毛片大片 | 天天摸夜夜添狠狠添婷婷 | 国产小视频91 | 亚洲人成免费电影 | 色一情一乱一伦 | 91国自啪 | 丰满多毛的大隂户视频 | 毛片少妇 | 18禁超污无遮挡无码免费游戏 | 人人澡超碰碰97碰碰碰 | 欧美性天天 | 亚洲欧美一二三 | 特黄做受又粗又大又硬老头 | 91精品国产综合久久久久久久 | 精品午夜一区二区三区 | 欧美91精品久久久久国产性生爱 | 日本阿v视频 | 日本综合色 | 在线播放小视频 | 国模杨依粉嫩蝴蝶150p | 精品久久网| 成人综合久久 | 骚鸭av| 日本www色 | 久久久久久av无码免费网站下载 | 国产福利不卡 | 亚洲a图 | 光明影院手机版在线观看免费 | 天天看片中文字幕 | 久久一区二区三区视频 | 天天做天天爱天天爽综合网 | 久久久久久久久91 | 欧美日韩国语 | 中文字幕一区二区三区电影 | 污视频在线网站 | 黄色片网站国产 | 国产激情成人 | 亚洲精品一区二区三区四区 | 国产在线精 | 国产专区在线 | 精品久久9999 | 欧美专区第一页 | 亚洲啊v在线 | 成人小视频在线免费观看 | 国产精品成人无码专区 | 国产色图片 | 黄色av免费在线看 | 一级片在线视频 | 成人三级在线播放 | av免费网站| 国产精品资源网 | 欧美性受xxxx| 国产中文欧美日韩在线 | 九九九九精品九九九九 | 国产欧美日韩精品区一区二污污污 | 求av网址| 一出一进一爽一粗一大视频 | 五月在线视频 |