CF1406E Deleting Numbers
做法:
枚举所有小于等于n的素数:
分成两部分:
小于等于sqrt(n)时:
B询问一个素数,然后A询问,如果A询问结果为0,那么全删了,如果A询问结果为1,说明x是这个素数的倍数,按因数分解的素因子逆向枚举这个x。
大于sqrt(n)时:
分块A操作删一个块的素数,超过或者到最后询问一个A 1看看有没有删少了,删少了就在这个块里。
实现1:
#include
#include
#include
#include
#include
#include
#include
#include
#include
实现2:
#include
#include
#include
#include
#include
#include
#include
#include