處理方式 HE TJOI2016 排序

2023-03-19 01:20:37 字數 957 閱讀 6459

從這個題的二分答案確實不太好想。主要地,這題有兩個切入點:①區間排序②離線單點詢問。

從①的話,可能可以想到對 01 序列的排序可以用線段樹維護;

從②的話,可能可以想到二分答案是否大於等於 \(x\),從而人為造成單調性。

所以本題的做法是二分 \(a_q\) 是否 \(\ge x\),並將序列中 \(\ge x,的分別設為 \(1,0\),對新序列(是個 01 序列)的排序只需要支援區間和、區間賦值操作。

#include using namespace std;

const int n=1e5+5;

inline int read()

int n,m,p,a[n],b[n],t[n<<2],tag[n<<2];

struct jq[n];

void pushup(int k)

void pushdown(int l,int r,int k)

void build(int l,int r,int k)

int mid=l+r>>1;

build(l,mid,k<<1),build(mid+1,r,k<<1|1);

pushup(k);

}void chg(int l,int r,int v,int l,int r,int k)

pushdown(l,r,k);

int mid=l+r>>1;

if(l<=mid)chg(l,r,v,l,mid,k<<1);

if(r>mid)chg(l,r,v,mid+1,r,k<<1|1);

pushup(k);

}int ask(int l,int r,int l,int r,int k)

bool check(int x)

else

} return ask(p,p,1,n,1);

}int main()

cout<}

介面處理方式

介面處理方式 這是每個應用中最薄弱的環節,也是最重要的環節,比如國際標,肯定要依賴中心庫,並且強依賴。註釋要寫詳細,包括出現異常情況怎麼處理,重要返回內容哪個可能為空 建立單元測試,覆蓋率要接近100 每次上線前都要執行測試用例,呼叫的應用要檢查依賴的應用是否可以正常建立連線,不要等你替換生產環境的...

I O處理方式

當請求的i o操作不能完成時,則不讓程序休眠,而且返回一個錯誤。如 open read write訪問。如果請求的i o操作阻塞,且他不是真正阻塞i o,而且讓其中的一個函式等待,在這期間,i o還能進行其他操作。如 select函式。在這種模型下,通過安裝一個訊號處理程式,系統可以自動捕獲特定訊號...

遇事處理方式

事,慢慢地說 大事,清楚地說 小事,幽默地說 沒把握的事,謹慎地說 沒發生的事,不要胡說 做不到的事,別亂說 傷害人的事,不能說 討厭的事,對事不對人地說 開心的事,看場合說 傷心的事,不要見人就說 別人的事,小心地說 自己的事,聽聽自己的心怎麼說 現在的事,做了再說 未來的事,未來再說 知人不必言...