p5445 [apio2019]路燈
轉化為平面上的座標(x,
y)'>(x,y),se
t'>
set維護連續區間.
用樹套樹維護矩陣加法,單點查詢。
注意維護矩陣差分的時候,
$(x,y,v)$是對$(x,y)(n+1,n+1)$的矩陣做出貢獻
#include#include#include
#include
#define ri register int
using
namespace
std;
intread()
#define n 600005
#define w 20000005
struct
e
bool
operator
< (const e &g) const
};set
g;set
::iterator it;
int n,t,a[n]; char opt[9
],cc[n];
intcnt,rt[n],lc[w],rc[w],s[w];
#define mid (l+r)/2
void ins1(int &o,int l,int r,int x,int
v)int ask1(int o,int l,int r,int x1,int
x2)void ins2(int x,int y,int v)
int ask2(int x,int y)
inline
void add(int x1,int y1,int x2,int y2,int
v)int
main()
for(it=g.begin();it!=g.end();++it) add((*it).l,(*it).l,(*it).r,(*it).r,t);
for(ri t=1;t<=t;++t)
else
else
a[x]^=1
; }
}return0;
}
洛谷P5443 APIO2019 橋梁
apio場外選手沒事休閒做題。看了yyb的題解才把這題做出來 對操作進行分塊,把每 text 個操作分成1組,裡面大概有2類 沒被修改過的和被修改過的。接著對塊內詢問進行離線。對於沒有修改過的 我們可以直接排序然後把他們加入並查集。對於修改過的,我們看他的時間是否大於當前操作的時間,如果大於則加入原...
APIO2019簡要題解
看到這種題,我們肯定會想到 x,y 一定有迴圈 我們要找到迴圈節的長度 推一下發現 x 的迴圈節長為 frac 等一下,t 是整數,所以迴圈節長為 frac y 的迴圈節長為 b 所以 x,y 的迴圈節長為 lcm frac,b frac 對每個時間段對迴圈節長取模進行區間覆蓋即可 用了 int12...
洛谷 P5445 路燈
題意見洛谷。首先考慮實時維護 forall i,j in 1,n 目前有多少時刻滿足能從 i 到達 j 顯然,i 能到達 j 當且僅當 i,j 在同乙個亮燈連續段裡。將當前狀態剖成若干個極大亮燈連續段,那麼能否到達關於 i,j 兩維的函式應該是由這些連續段,每段分別在 i 軸和 j 軸上作為兩條鄰邊...