桌子上零散地按照後先後順序放著若干個盒子,盒子都平行於牆。桌子的後方是一堵牆。如圖所示。問從桌子前方可以看到多少個盒子?假設人站得足夠遠。
第1行:3個整數l,r,n。-100000 <=l<=r<= 100000,表示牆所在的區間;1<=n<=100000,表示盒子的個數
接下來n行,每行2個整數bl, br,-100000 <=bl<=br<= 100000,表示乙個盒子的左、右端點
輸出僅為乙個整數m,表示可看到的盒子個數。
1 10 4
3 5
1 4
2 6
7 8
統計標記種類(區間修改區間查詢)
我的做法很神奇
直接給區間乙個顏色(序號不同顏色不同)
然後查到了就hash顏色
最後統計hash
別忘了加偏移量
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;
inline const int get_int()
while(x>='0'&&x<='9')
return num*bj;
}const int maxn=600000;
int hash[maxn];
struct tree ;
struct segment_tree
void push_down(int
index)
}void modify(int
index,int left,int right,int color)
push_down(index);
modify(index*2,left,right,color);
modify(index*2+1,left,right,color);
}void query(int
index,int left,int right)
query(index*2,left,right);
query(index*2+1,left,right);
}};segment_tree st;
int left,right,n,delta;
int main()
st.query(1,left,right);
intsum=0;
for(int i=1; i<=n; i++)
if(hash[i])sum++;
printf("%d\n",sum);
return
0;}
線段樹練習3
給定一條長度為m的線段,有n個操作,每個操作有3個數字x,y,z表示把區間 x,y 染成顏色z。規定 線段的顏色可以相同。連續的相同顏色被視作一段。詢問染色後的線段被分為多少段。線段樹 cover 1表示該區間由多種顏色組成。cover 0表示該區間只有一種單一的顏色cover。和線段樹練習2差不多...
css3盒子相關樣式
1 css3的display屬性 inline 內聯 inline block 可以設定寬高的內聯 block 設定為塊 doctype html html lang en head meta charset utf 8 title css3盒子型別 title style inline 內聯,in...
CSS3盒子陰影box shadow
來自w3cschool的解釋 語法 box shadow h shadow v shadow blur spread color inset 值描述 h shadow 必需。水平陰影的位置。允許負值。v shadow 必需。垂直陰影的位置。允許負值。blur 可選。模糊距離。spread 可選。陰影...