小 A 想将正整数 n 拆分成若干个正整数之和,并最大化拆分后的正整数之积。小 A 希望你帮他计算出拆分后正整数之积的最大值。由于答案可能很大,你只需要求出答案对 10^9 取模的结果。
形式化地,n 的拆分是满足 a_1+\cdots+a_k=n 的若干个正整数 a_1,\dots,a_k,其中 1\leq k\leq n。你需要求出 n 的所有拆分中 a_1\times \cdots\times a_k 的最大值对 10^9 取模的结果。
第一行,一个正整数 t,表示数据组数。
对于每组数据:一行,一个整数 n,表示给定的正整数。
对于每组数据:输出一行,一个整数,表示 n 拆分后正整数之积的最大值对 10^9 取模的结果。
3 5 8 100
6 18 755407364
对于 40\% 的测试点,保证 n\leq 50。
对于 100\% 的数据,保证 1\leq t\leq 10^4,1\leq n\leq 10^6。