传送门
代数变形一波。
显然有b,c>a。
那么这样的话可以令b=a+m,c=a+n。
又有a=(bc-1)/(b+c)。
带入展开可知m*n=a*a+1。
要让m+n最小只需让m最大,这个结论显然成立。
代码:
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll a,m,n,maxn;
int main(){
cin>>a,maxn=a*a+1;
for(int i=a;;--i){
if(maxn%i)continue;
cout<<i+(maxn/i)+a*2;
break;
}
return 0;
}