對每個區間維護一下這個區間每個數有沒有,用bitset壓一下,這個用莫隊跑出來,然後就能判加減合不合法了
乘的話根號列舉一下就行了
#include#include#include#include#include#include#include#include#include#include#include#include#include#includeusing namespace std;
#define maxn 100010
#define maxm 1010
#define ll long long
#define eps 1e-8
#define mod 1000000007
#define inf 1000000000
char xb[1<<15],*xs=xb,*xtt=xb;
#define getc() (xs==xtt&&(xtt=(xs=xb)+fread(xb,1,1<<15,stdin),xs==xtt)?0:*xs++)
#define isd(c) (c>='0'&&c<='9')
int read()
const int lim=100010;
struct que
int n=(int)sqrt(n);
for(i=1;i<=m;i++)
sort(q+1,q+m+1);
int l=1,r=0;
for(i=1;i<=m;i++)
} while(r>q[i].r)
r--;
} while(l>q[i].x)&f).any();
} if(q[i].o==2)
if(q[i].o==3)
for(j=1;j*j<=q[i].x;j++)}}
} }for(i=1;i<=m;i++)
return 0;}/*
5 51 1 2 3 4
2 1 1 2
1 1 2 2
3 1 1 1
3 5 5 16
1 2 3 4
*/
bzoj4810 Ynoi2017 由乃的玉公尺田
由乃在自己的農田邊散步,她突然發現田裡的一排玉公尺非常的不美。這排玉公尺一共有n株,它們的高度參差不齊。由乃認為玉公尺田不美,所以她決定出個資料結構題 這個題是這樣的 給你乙個序列a,長度為n,有m次操作,每次詢問乙個區間是否可以選出兩個數它們的差為x,或者詢問乙個區間是否可以選出兩個數它們的和為x...
BZOJ 2535 Plane 航空管制2
題意 n個飛機一次出航。第i個飛機在出航序列中的序號不大於ki。另外有一些限制,表示飛機a的出航序號小於飛機b。1 輸出乙個合法的出航序列 2 輸出每個飛機最早的出航序號。思路 參考這裡。第一問比較好搞定。對於給出的,我們不妨建立有向邊。那麼b的所有孩子的出航序號必然小於b的出航序號。按照這個拓撲排...
BZOJ 2199奶牛議會 2 SAT
傳送門 bzoj2199 許可權題?沒關係,你洛上也有 洛谷 usaco11jan 大陸議會the continental cowngress 一道2 sat簡單題。只需要用到2 sat連有向邊的操作,拓撲排序和縮點都不需要,直接暴力找 非常之暴力 include using namespace s...