描述
公园准备在小山上种桃树、梨树、苹果树,为了美观,总共准备种 n 棵树( n>=6 且 n 一定是 6 的倍数),要求三种树都得有,且每种树的数量都得是偶数,桃树的数量不能比梨树的数量多,梨树的数量不能比苹果树的数量多。请问有这三种树的数量分别有哪些可能的组合方法,从少到多分别数出桃树、梨树、苹果数可能的数量组合,每行 1 个方案。
输入描述
一个整数n(n>=6且是6的倍数)
输出描述
若干行的可能的组合方案,每行3个数,分别代表桃树、梨树、苹果树的可能的方案。
用例输入 1
18
用例输出 1
2 2 14 2 4 12 2 6 10 2 8 8 4 4 10 4 6 8 6 6 6
来源
需要找规律的循环
代码实现:
#include<iostream>
using namespace std;
int main() {
int n;
cin>>n;
for(int i=2;i<=n;i+=2){
for(int j=2;j<=n;j+=2){
for(int x=2;x<=n;x+=2){
if(i+j+x==n && i<=j && j<=x){
cout<<i<<' '<<j<<' '<<x<<endl;
}
}
}
}
return 0;
}