bzoj3211: 花神遊歷各國
因為開方的話開不了幾次就變成1了
所以用乙個mx標記一下最大值 如果最大值<=1 這個區間就根本不用開方了
原來用了lazy結果跑得跟dfs一樣
拍了一早上愣是找不到差異hhh
真是令人窒息的操作
~~我mx不開longlongbzoj居然能過但是luogu卡了很久~~
#include
#include
#include
#include
using namespace std;
struct node
tr[210000];
int len=0;
long long data[110000];
void br(int l,int r)
else
}void change(int
x,int l,int r)
int mid=(tr[x].l+tr[x].r)/2;
intlc=tr[x].lc,rc=tr[x].rc;
if (r<=mid) change(lc,l,r);
else
if (l>mid) change(rc,l,r);
else
tr[x].c=tr[lc].c+tr[rc].c;
tr[x].mx=max(tr[lc].mx,tr[rc].mx);
}long long find(int
x,int l,int r)
int mid=(tr[x].l+tr[x].r)/2;
intlc=tr[x].lc,rc=tr[x].rc;
if (r<=mid) return find(lc,l,r);
else
if (l>mid) return find(rc,l,r);
else
}int main()
if (u==2) change(1,x,y);
else
if (u==1)
}return
0;}
花神遊歷各國 bzoj3211 線段樹
有乙個n個數的序列a,請寫乙個程式完成下列操作 1 l r表示查詢l到r的和 2 l r表示把每個a x l x r 變為sqrt x n 100000,m 100000 其實我是偶然看過冪偉的題解的 滑稽 109 最多開根6次就變成1了,對於1無論怎樣開根都是不影響的 兩種做法。如果是樹狀陣列的話...
bzoj3211 花神遊歷各國 線段樹
題目大意 維護乙個長度為n的序列,支援一下兩個操作 1 區間開根號 向下取整 2 區間求和。n 100000,m 200000,序列中的數 10 9且為非負整數。題目分析 都這個逼樣了還來刷水,我是心大還是腦子進屎呢t t 時間複雜度o nlogn 對於所有數修改次數最多不超過5n次,每次修改時間複...
BZOJ 3211 花神遊歷各國(線段樹)
time limit 5 sec memory limit 128 mb submit 3476 solved 1288 submit status discuss 每次x 1時,每行乙個整數,表示這次旅行的開心度 4 1 100 5 5 51 1 2 2 1 2 1 1 2 2 2 3 1 1 4...