????????C++??????Ч????????????????Щ?????????????????????C++????????????????????????????????????????????????????????????????????
??????????????????????????????????????
????#include <iostream>
????#include <cstring>
????#include <cstdio>
????using namespace std;
????const int N = 1000001;
????struct Node
????{
????int l?? r;
????} node[N * 4];
????void build( int i?? int l?? int r )
????{
????node[i].l = l?? node[i].r = r;
????if ( l == r ) return ;
????int mid = ( l + r ) / 2;
????build( i * 2?? l?? mid );
????build( i * 2 + 1?? mid + 1?? r );
????}
????int main ()
????{
????build( 1?? 1?? N - 1 );
????return 0;
????}
?????????node????????????????????????????????sum??max??min???????????????????????????
???????????????????????????????????????????????????????????????????????????е??????????????д?????????????????д??????????????????
????#include <iostream>
????#include <cstring>
????#include <cstdio>
????using namespace std;
????const int N = 1000001;
????struct Node
????{
????int l?? r;
????} node[N << 2];
????void build( int i?? int l?? int r )
????{
????node[i].l = l?? node[i].r = r;
????if ( l == r ) return ;
????int mid = l + r >> 1;
????build( i << 1?? l?? mid );
????build( i << 1 + 1?? mid + 1?? r );
????}
????int main ()
????{
????build( 1?? 1?? N - 1 );
????return 0;
????}
????????λ?????????????????ò?????????????????????????????????????????
??????????????????????????????λ????? << ???????????? +??
???????? build( i << 1 + 1?? mid + 1?? r ); ????? build( i << ( 1 + 1 )?? mid + 1?? r );
??????????????? build( ( i << 1 ) + 1?? mid + 1?? r );
?????????????????????????????????????????
??????????????????????????????д???????????????????
????build( i << 1 | 1?? mid + 1?? r );
?????????????????????