请问下面的题我哪里错了(C++)?应该成什么?

 ###### 问题遇到的现象和发生背景

 ###### 问题相关代码,请勿粘贴截图

 ###### 运行结果及报错内容

 ###### 我的解答思路和尝试过的方法

 ###### 我想要达到的结果

img

img

#include <iostream>

int main()
{
    const int N = 36;
    for (int i = 1; i < N / 4; i++)
    {
        for (int j = 1; j < N / 3; j++)
        {
            for (int k = 2; k < N * 2; k += 2)
            {
                if ((i + j + k == N) && i * 4 + j * 3 + k / 2 == N)
                    std::cout << i << ' ' << j << ' ' << k << '\n';
            }
        }
    }
    return 0;
}

你的第三个for循环,初始化k=2,而你的循环条件是k<=1,所以第三个for循环不成立,你的输出就肯定不行呀,你的循环条件必须大于或者等于2

说实话你这个代码应该思路就错了
这是一道枚举的题目 首先你循环的条件应该是每一种人最多的人数而不是砖头的块数 其次你要判断一下这种搭配符不符合再输出 不能盲目输出
实在不行你就暴力打表吧