#include <bits/stdc++.h>
using namespace std;
int solve(vector<int> v) {
int ret = 0;
for(int i = 1; i < v.size(); i++) ret += max(v[i], v[i - 1]);
return ret;
}
int main() {
vector<int> p = { 1, 2, 2, 2, 3, 4, 4 };
sort(p.begin(), p.end());
int z = solve(p);
do {
if(solve(p) == z) {
for(int i = 0; i < 7; i++) cout << p[i] << ' ';
cout << endl;
}
} while(next_permutation(p.begin(), p.end()));
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCBzb2x2ZSh2ZWN0b3I8aW50PiB2KSB7CglpbnQgcmV0ID0gMDsKCWZvcihpbnQgaSA9IDE7IGkgPCB2LnNpemUoKTsgaSsrKSByZXQgKz0gbWF4KHZbaV0sIHZbaSAtIDFdKTsKCXJldHVybiByZXQ7Cn0KaW50IG1haW4oKSB7Cgl2ZWN0b3I8aW50PiBwID0geyAxLCAyLCAyLCAyLCAzLCA0LCA0IH07Cglzb3J0KHAuYmVnaW4oKSwgcC5lbmQoKSk7CglpbnQgeiA9IHNvbHZlKHApOwoJZG8gewoJCWlmKHNvbHZlKHApID09IHopIHsKCQkJZm9yKGludCBpID0gMDsgaSA8IDc7IGkrKykgY291dCA8PCBwW2ldIDw8ICcgJzsKCQkJY291dCA8PCBlbmRsOwoJCX0KCX0gd2hpbGUobmV4dF9wZXJtdXRhdGlvbihwLmJlZ2luKCksIHAuZW5kKCkpKTsKCXJldHVybiAwOwp9