开平方根向下取整作为初始长度,然后长度不断自增直到能把n整除,算出宽度并输出。

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;
    cin>>n;
    int length=ceil(sqrt(n)),width;
    while(n%length!=0){
        length++;
    }
    width=n/length;
    cout<<width<<' '<<length;
    return 0;
}