Vladik and fractions
涉及知识点:
- 数学/构造
solution:
- 本题解法不唯一,这里只给出一种比较简单的构造方法
- 先考虑不可能的情况,n = 1,无解,因为他们能组成的最大值 = (frac{1}{1}+)(frac{1}{2}+)(frac{1}{3}),明显小于2
- 接下来考虑构造,首先设x = n
- 则有(frac{1}{y}+)(frac{1}{z})(=frac{1}{n})
- 然后根据(frac{1}{n+1}+frac{1}{n imes(n+1)}=frac{1}{n})
- 我们可以令y = n + 1, z = n×(n + 1),这样我们就构造出来了正确的结果
std:
#include <bits/stdc++.h>
using namespace std;
#define ll long long
int main()
{
int n;
cin>>n;
if(n == 1){
cout<<"-1"<<endl;
return 0;
}
cout<<n<<" "<<n+1<<" "<<n*(n+1)<<endl;
return 0;
}