Notice
由于 OJ 的特殊性,本题仅支持 C++,提交时你需要保留 main 函数。
Description
维护初始为空的多重集 S,进行 n 次询问,第 k 次询问在 S 中插入给定非负整数,然后求 S 中第 ⌈k2⌉ 小的数。
由于输入输出规模较大,本题使用交互方式对输入输出数据进行压缩:下发文件中包含正式评测时使用的交互库 grader.cpp,你需要实现如下函数表示进行一次询问:x 表示插入的数,返回值表示当前 S 中第 ⌈k2⌉ 小的数。该函数会被调用恰好 n 次。
unsigned Insert(unsigned x);
你可以使用以下方式进行测试:将 grader.cpp 的主函数 main() 复制到你的程序末尾,然后编译运行,注意你提交的程序也要包含主函数 main()。
Input
一行,一个正整数 n 和一个非负整数 sd。
Output
一行,一个非负整数,表示一个仅与你给出的询问答案有关的值。
Sample Input
50000000 998244353
Sample Output
3198515710
Range
对于所有数据,保证 sd 是无符号 32 位整数。
本题共 10 组测试点,对于第 i 个测试点,保证 n=5×106×i。