#P5668. 【模板】N 次剩余
【模板】N 次剩余
题目描述
你需要解方程 ,其中 。
输入格式
第一行正整数 为数据组数。
每组数据三个正整数 。
输出格式
每组数据一或两行:
第一行为不同解的个数 。
若 ,接下来第二行共 个整数,升序输出所有可能解,空格隔开。
数据保证 。
提示
对于 的数据,,,。
设 的唯一分解形式为 ,保证方程 在 中的解数 。
你需要解方程 xn≡k(modm),其中 x∈[0,m−1]。
第一行正整数 T 为数据组数。
每组数据三个正整数 n,m,k。
每组数据一或两行:
第一行为不同解的个数 c。
若 c=0,接下来第二行共 c 个整数,升序输出所有可能解,空格隔开。
数据保证 ∑ci≤106。
27
264 19947 39630 59313 78996 98679 118362 138045 157728 177411 197094 216777 236460 256143 275826 295509 315192 334875 354558 374241 393924 413607 433290 452973 472656 492339 512022
5
1 82945 138241 165889 193537
对于 100% 的数据,1≤T≤100,1≤n≤109,0≤k<m≤109。
设 m 的唯一分解形式为 m=∏i=1spiqi,保证方程 xn≡k(modpiqi) 在 [0,piqi) 中的解数 ≤106。