luoguP4887 第十四分塊(前體) 莫隊的二次離線法
luoguP4887 第十四分塊(前體)
題目傳送門
分析
掌握核心莫隊科技。
如果說題目中詢問的是某個區間中的兩兩元素,子區間這種沒有辦法在
統計的答案,有一種黑科技叫做莫隊二次離線。
考慮莫隊的一次插入與刪除。
這個過程中,需要變更的資訊是
。
考慮開桶,也需要
的複雜度來完成更新。
這個時候發現,變更的資訊是可差分的。
不難發現,如果說能夠預處理出
區間內的貢獻的桶,我們可以在
的複雜度內處理
,而從
,僅僅需要把
塞到桶裡面,其中
是所有二進位制下恰有
個
的數。
所以考慮把莫隊的所有
個操作暴力記錄。開一個桶掃描線即可做到
,這就是所謂二次離線
然而出題人卡了空間。
這個時候就要考慮莫隊的性質。
對於一個固定的詢問
,莫隊僅僅會做兩種操作:
- 固定 ,將 移到
- 固定 ,將 移到
假設當前的操作是
。
答案就是
顯然
僅僅和
有關,可以預處理+字首和。
而
的
是固定不變的,掃描線的時候可以一起處理區間
對
的貢獻。所以開一個鄰接表或者
記錄下要算的區間即可。具體地,在
位置插入
區間,表示要計算
中每個數的貢獻,並且標記這個貢獻對應的位置。
而其他情況是類似的,討論一下即可。
這樣的話就可以在
的空間內完成這道題。
程式碼
#include<bits/stdc++.h>
const int N = 1e5 + 10;
int ri() {
char c = getchar(); int x = 0, f = 1; for(;c < '0' || c > '9'; c = getchar()) if(c == '-') f = -1;
for(;c >= '0' && c <= '9'; c = getchar()) x = (x << 1) + (x << 3) - '0' + c; return x * f;
}
int v[N], a[N], pr[N], cnt[N], nx[N << 1], C, tp, n, m, k, B;
long long Ans[N], cur, A[N << 1], s1[N], s2[N];
struct Q {int l, r, id; void in(int i) {l = ri(), r = ri(); id = i;}}q[N], to[N << 1];
void Add(int u, Q a) {to[++C] = a; nx[C] = pr[u]; pr[u] = C;}
bool cmp(Q a, Q b) {
int x = a.l / B, y = b.l / B;
return x == y ? (x & 1 ? a.r > b.r : a.r < b.r) : x < y;
}
int main() {
n = ri(); m = ri(); k = ri
相關推薦
luoguP4887 第十四分塊(前體) 莫隊的二次離線法
luoguP4887 第十四分塊(前體)
題目傳送門
分析
掌握核心莫隊科技。 如果說題目中詢問的是某個區間中的兩兩元素,子區間這種沒有辦法在
O
Luogu4887 第十四分塊(前體)
sto
l
x
l
牛客練習賽10 E題 數列查找 (分塊思想 + 莫隊算法)
意義 blog str aps mes blank ref pair rem 題目鏈接 數列查找
考慮分塊然後跑莫隊,
設$c[i]$為$i$在當前維護的區間內出現的次數,
$g[i]$為在當前維護的區間內有多少個數出現次數為$i$,
$bg[i]$把出現次數分塊
【分塊,莫隊】【P4396】【AHOI2013】作業
傳送門
Description
此時己是凌晨兩點,剛剛做了Codeforces的小A掏出了英語試卷。英語作業其實不算多,一個小時剛好可以做完。然後是一個小時可以做完的數學作業,接下來是分別都是一個小時可以做完的化學,物理,語文......小A壓力巨大。
這是小A碰見了一道非常噁心的數學題,給定了一個長度
python第十四天
atm logs 用戶認證 log 購物車 裝飾 日常 。。 image 作業:ATM
作業需求:
模擬實現一個ATM + 購物商城程序
額度 15000或自定義
實現購物商城,買東西加入 購物車,調用信用卡接口結賬
可以提現,手續費5%
每月22號出賬單,每月10號為還
Java(第十四章)
class 小寫字母 圓點 對象 文件夾 頂級域名 前綴 部分 不同 第十四章
1、Java中的包(package)
2.1 包,對應到磁盤中的文件夾
2.2 新建一個class,默認保存在缺省包中
2.3
Python開發【第十四篇】:Web框架本質
中一 用戶 contain get pattern app sta doc connect Web框架本質
眾所周知,對於所有的Web應用,本質上其實就是一個socket服務端,用戶的瀏覽器其實就是一個socket客戶端。
1
2
3
4
5
6
7
8
9
python學習第十四節(正則)
image all flags 正則 asdf alt afa images lag python2和python3都有兩種字符串類型strbytes
re模塊find一類的函數都是精確查找。字符串是模糊匹配
findall(pattern,string,flags)
r
第十四章 springboot + profile(不同環境讀取不同配置)
img ont 代碼執行 ring stp uri div () rim 具體做法:
不同環境的配置設置一個配置文件,例如:dev環境下的配置配置在application-dev.properties中;prod環境下的配置配置在application-prod.
手機影音第十四天,本地音樂列表的展示與播放(利用視頻播放的布局)
獲取本地音樂 共用視頻播放頁面來播放音樂 代碼已經托管到碼雲,有興趣的小夥伴可以下載看看 https://git.oschina.net/joy_yuan/MobilePlayer 效果圖: Android系統提供了MediaScanner,MediaProvider,MediaS
【第一組】第十四次沖刺例會紀要
吐槽 開發 工作 司機 image 功能 9.png 放大 src 開發小組:Neu Old Driver
沖刺經理:何圖
小組成員:李白洋、王彬宇、李恒雨、黃文睿、安迪
1、 昨天做了什麽
黃文睿:Binding
李白洋:完成空教室頁面
何圖:完成東大老司機圖標
李恒
oracle課堂隨筆--第十四天
唯一性 default arc reference ref market zone 日期時間 替代 集合操作
select employee_id, job_id from employees
union all 不去除 保留重復值
select emp
第十四篇 現象
幫助 產生 這也 人類 被人 規律 生命 快速 宇宙 第十四篇 現象
“現象”的產生是由宇宙當中各種因素交匯的結果。現象是萬物在宇宙中的展現,它可以被人為創造,也可以由宇宙規律自行產生。現象能幫助人類逐步地了解宇宙的本質,也能幫助人類更好地了解自己。
當一個生命對
Oracle課程檔案,第十四天
分隔 arch set arc figure put 數據文件 conf bsp 備份數據文件:SQL> select file_id, file_name from dba_data_files; backup:備用(備份) datafile:數據文
python自動化開發-[第十九天]-分頁,cookie,session
dex delet value ati coo socket客戶端 自定義分頁 blog 協議 今日概要:
1、cookie和session
2、csrf 跨站請求偽造
3、自定義分頁
一、上節回顧:
http請求的本質:
- Http請求本質
瀏覽器
HTML學習筆記 cs2D3D展示基礎 第十四節 (原創) 參考使用表
safari 學習筆記 ans com div2 s2d spa har tex
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
webug第十四關:存儲型XSS
alt bsp images cnblogs web 語句 技術 mage blog 第十四關:存儲型XSS
打開發現是評論區
留言加入xss語句
webug第十四關:存儲型XSS
python學習之第十四課時--基本數據練習
名稱 pri 提示 大於 不足 goods 賬戶 bsp money 購物車
功能要求:
要求用戶輸入總資產,例如:5000
顯示商品列表,讓用戶根據序號選擇商品,加入購物車
購買,如果商品總額大於總資產,提示賬戶余額不足,否則,購買成功。
附加:可充值
算法導論讀書筆記-第十四章-數據結構的擴張
步驟 檢驗 int 由於 旋轉 著色 推出 log 14.3 算法導論第14章 數據結構的擴張
一些工程應用需要的只是標準數據結構, 但也有許多其他的應用需要對現有數據結構進行少許的創新和改造, 但是只在很少情況下需要創造出全新類型的數據結構, 更經常的是通過存儲額外信息的
我的物聯網項目(十四) 分布式事務
分布式 spa 穩定性 保存 說過 吞吐量 處理方式 目的 解決方法 2.0平臺服務化架構,必然分庫,分庫又必然面臨一個分布式事務處理問題,所以無論是設計還是編碼遠遠比1.0單體應用架構的工作量要大。不過做任何事情,重點不在實施,而是在思路,所以要解決分布式事務問題,還得先