D题
数学推导
代码如下
#include <bits/stdc++.h>
using namespace std;
using ll=long long;
int main()
{
ll k;cin>>k;
ll d=sqrt((long double)(k+1));
bool tag=0;
for(ll i=2;i<=d;i++){
ll j=(k+1)/i;
if(j>=2 && i*j==k+1){
cout<<i-1+j-1<<' '<<(i-1)*(j-1)<<'\n';
tag=1;
break;
}
}
if(!tag) cout<<"-1\n";
}