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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

洛谷 P1494 [国家集训队]小Z的袜子

發布時間:2023/12/18 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 洛谷 P1494 [国家集训队]小Z的袜子 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目描述

作為一個生活散漫的人,小Z每天早上都要耗費很久從一堆五顏六色的襪子中找出一雙來穿。終于有一天,小Z再也無法忍受這惱人的找襪子過程,于是他決定聽天由命……

具體來說,小Z把這N只襪子從1到N編號,然后從編號L到R(L 盡管小Z并不在意兩只襪子是不是完整的一雙,甚至不在意兩只襪子是否一左一右,他卻很在意襪子的顏色,畢竟穿兩只不同色的襪子會很尷尬。

你的任務便是告訴小Z,他有多大的概率抽到兩只顏色相同的襪子。當然,小Z希望這個概率盡量高,所以他可能會詢問多個(L,R)以方便自己選擇。

然而數據中有L=R的情況,請特判這種情況,輸出0/1。

輸入輸出格式

輸入格式:

輸入文件第一行包含兩個正整數N和M。N為襪子的數量,M為小Z所提的詢問的數量。接下來一行包含N個正整數Ci,其中Ci表示第i只襪子的顏色,相同的顏色用相同的數字表示。再接下來M行,每行兩個正整數L,R表示一個詢問。

?

輸出格式:

包含M行,對于每個詢問在一行中輸出分數A/B表示從該詢問的區間[L,R]中隨機抽出兩只襪子顏色相同的概率。若該概率為0則輸出0/1,否則輸出的A/B必須為最簡分數。(詳見樣例)

?

輸入輸出樣例

輸入樣例#1:?復制 6 4 1 2 3 3 3 2 2 6 1 3 3 5 1 6 輸出樣例#1:?復制 2/5 0/1 1/1 4/15

說明

30%的數據中 N,M ≤ 5000;

60%的數據中 N,M ≤ 25000;

100%的數據中 N,M ≤ 50000,1 ≤ L < R ≤ N,Ci ≤ N。

?

莫隊算法入門是在大米餅的博客學習的 戳這里%%%

這道題之前在東北講莫隊的時候講過 然后今天大家都在搞這道題 我就來湊個熱鬧

很明顯這道題$O(n√n)$是可以過得?

根據莫隊算法的基本思想 離線處理詢問 現將詢問按照左端點分組 在同一個塊內的分成一組 然后再對每個塊內的詢問按照右端點排序

接社我們處理完一個詢問 那么到達下一個同組內的詢問時 左端點在同一個塊內反復橫跳 右端點遞增的掃過去 就利用了之前的信息?

現在就是怎么算答案了 設每個顏色的數量分別為?$a1,a2,a3,a4 .... $

那么每個顏色被選中的情況的數量

化簡得

? ? ? ? ?$(a1 * (a1 - 1) + a2 * (a2 - 1) + ... )\cdot \frac{1}{2}= \sum_{i = 1}^{n} (ai\cdot ai - ai)\cdot \frac{1}{2} = (\sum_{i = 1}^{n}ai\cdot ai - len)\cdot \frac{1}{2}$

$len$是詢問區間長度 即$R - L+1$ 

概率就是 上面那一坨再除以$_{len}^{2}\textrm{C}$?

再化化簡得 $\frac{\sum_{i= 1}^{n} ai^{2} - len}{(len - 1)\cdot len}$

所以對于這玩意我們只需要維護每種顏色的平方和 剩下的就是各種細節亂搞了

代碼

#include <bits/stdc++.h> using namespace std;typedef long long ll; const int N = 5 * 1e5 + 5; int n,m,num[800],c[N],blo,cnt; ll h[N],ans;struct ques {int l,r,id; }q[N],k[800][800],a[N];bool cmp(const ques & a,const ques & b) {return a.r < b.r; }void Init( ) {scanf("%d%d",& n,& m);for(int i = 1;i <= n;i ++) scanf("%d",& c[i]);blo = sqrt(n);for(int i = 1;i <= m;i ++) {scanf("%d%d",& q[i].l,& q[i].r);q[i].id = i;int b = (q[i].l + blo - 1) / blo;k[b][++ num[b]] = q[i];}cnt = (n + blo - 1) / blo;for(int i = 1;i <= cnt;i ++) if(num[i]) sort(k[i],k[i] + num[i] + 1,cmp);int tot = 0;for(int i = 1;i <= cnt;i ++)if(num[i]) {for(int j = 1;j <= num[i];j ++)q[++ tot] = k[i][j];} }ll gcd(ll a,ll b) {return b == 0 ? a : gcd(b,a % b); }void update(int pos,int del) {ans -= h[c[pos]] * h[c[pos]];h[c[pos]] += del;ans += h[c[pos]] * h[c[pos]]; }void Solve( ) {ans = 0;int L,R,las = 0;for(int i = 1;i <= m;i ++) {int now = (q[i].l + blo - 1) / blo;if(i == 1) {las = now;if(q[i].l == q[i].r) {printf("0/1\n"); L = q[i].l; R = q[i].r;continue;}for(int j = q[i].l;j <= q[i].r;j ++) h[c[j]] ++;for(int j = 0;j <= n;j ++) {ans += (h[j] * h[j]);}L = q[i].l; R = q[i].r;}else {for(;R < q[i].r;R ++) update(R + 1,1);for(;R > q[i].r;R --) update(R,-1);for(;L > q[i].l;L --) update(L - 1,1);for(;L < q[i].l;L ++) update(L,-1);}if(q[i].l == q[i].r) {a[q[i].id].l = 0; a[q[i].id].r = 1;continue;} ll len = q[i].r - q[i].l + 1;ll u = len * (len - 1),g = gcd(ans - len,u);ll up = (ans - len) / g;ll down = u / g;a[q[i].id].l = up; a[q[i].id].r = down;}for(int i = 1;i <= m;i ++) printf("%d/%d\n",a[i].l,a[i].r); }int main( ) {Init( );Solve( ); }

轉載于:https://www.cnblogs.com/Rubenisveryhandsome/p/9645782.html

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的洛谷 P1494 [国家集训队]小Z的袜子的全部內容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 惊艳大片mv视频 | 911香蕉| 四色最新网址 | 中国av免费| jizz亚洲女人高潮大叫 | 日韩一级影院 | 成年网站在线播放 | 美女免费网站 | 亚洲影院一区 | 女人下边被添全过视频 | 国产精品久久久久久久久久久久久久久久 | 摸摸大奶子 | 好吊色视频在线观看 | 在线观看网站av | 久草视频在线资源 | 色婷婷久久综合 | 国产xx在线观看 | 偷自拍 | 亚州av片 | 综合五月网 | 欧洲色综合 | 成人a级大片 | 国产精品人人做人人爽人人添 | 91国内精品| 亚洲一级一区 | 色777| 国产在线成人精品午夜 | 嫩草视频在线观看视频 | 天天综合网久久综合网 | 欧美午夜一区二区 | 男人天堂2020 | 国产av无码专区亚洲av麻豆 | 午夜成人影视 | 免费成人美女女 | 日日拍拍| 夜夜嗨老熟女av一区二区三区 | 美女被猛网站 | 成年人一级片 | 老司机深夜福利在线观看 | 91视频合集 | 亚洲第一页夜 | 黑人3p波多野结衣在线观看 | 欧美精品一二三 | 亚洲六月丁香色婷婷综合久久 | 欧美日韩高清一区二区三区 | 少妇情理伦片丰满午夜在线观看 | 国产精品一二三区在线观看 | 欧美第二区 | 老汉av| 成人夜夜| 日韩avav| 欧洲午夜精品 | 性欧美在线观看 | 无套白嫩进入乌克兰美女 | 色播开心网| 久久久久亚洲av无码网站 | www亚洲色图 | 好大好爽好舒服 | 久久人妻少妇嫩草av | 在线成人免费电影 | 中文字幕色片 | av免费看在线 | 99视频在线看 | 久久网站免费看 | 日本a视频在线观看 | 国产欧美精品一区二区三区 | 国产欧美精品一区二区在线播放 | 视频二区中文字幕 | 欧美乱妇狂野欧美视频 | 久操操 | 欧洲最强rapper网站直播 | 国产人成无码视频在线观看 | 男人天堂视频在线观看 | 日本女人一级片 | 国产综合亚洲精品一区二 | juliaann第一次和老师 | japanese在线观看 | 97超碰人 | 一级做a爱片久久毛片 | 福利在线一区 | 中文一区二区在线观看 | 欧美另类视频在线 | 2019中文字幕在线观看 | 秋霞啪啪片| 国产一区在线播放 | 国产精品久久久久久久久久辛辛 | 美国少妇性做爰 | 丰满少妇被猛烈进入一区二区 | 天堂欧美城网站 | 四房婷婷| 高贵麻麻被调教成玩物 | 久久久久国产免费 | 欧美精品一级在线观看 | www.在线观看av | 日本网站在线免费观看 | 久久人妻少妇嫩草av无码专区 | 欧美丰满熟妇xxxx | 日本wwwwwww | 91青草视频 |