/ WHOJ / 题库 /

卵石矩阵(文件IO)

卵石矩阵(文件IO)

题目描述

Dave 最近收集了一些有趣的鹅卵石,他想把它们排成一个矩阵,但希望矩阵的行数与列数和最小(注意,鹅卵石的个数可能小于矩阵的行列相乘的结果,如鹅卵石的个数为 1414,则可以排成 2×72×7 的矩阵,也可以排成 3×53×5 的矩阵,也可以排成 4×44×4 的矩阵,后两个解中,矩阵的总面积大于鹅卵石的个数,而且 3544<273+5=4+4<2+7,所以 33 5544 44 是本例的解)。即输入nn,找出当 a×bna×b≥n 时,a+ba+b 的最小值。编程帮助 Dave 找到这样的方案。

格式

输入格式

第一行为正整数 t(50)t(≤50),表示数据组数;接下来 tt行,每行一个正整数 NN,表示鹅卵石的总数。1N105(1≤N≤10^5)

输出格式

对于每组数据,输出所有满足条件的矩阵行列数,每一行表示一个解,每个解中,矩形边长按从小到大的顺序输出,所有的解中,按第一个数从小到大排序。

样例1

输入样例1

2
14
150

输出样例1

3 5
4 4
10 15
11 14
12 13

样例解释

样例 22 中,10×15=15011×14=15412×13=15610×15=150,11×14=154,12×13=156 均为符合条件的长方形,且 10+15=11+14=12+13=2510+15=11+14=12+13=25 为最小的长 ++ 宽之和。

来源

地址:芜湖市二十七中电脑班刷题课
作者:汪老师
模拟赛T2T2

文件IO

freopen("icon.in","r",stdin);
freopen("icon.out","w",stdout);