算法
(数论) $O(1)$
当 $n \leqslant 30$ 时都是 NO
当 $n > 30$ 时都是 YES
对于 $n = 36,\ 40, \ 44$ 时直接输出 6 10 15 n-31
其他情况输出 6 10 14 n-30
C++ 代码
#include <bits/stdc++.h>
using std::cin;
using std::cout;
int main() {
int t;
cin >> t;
while (t--) {
int n;
cin >> n;
if (n < 31) puts("NO");
else {
puts("YES");
if (n == 36 or n == 40 or n == 44) {
cout << "6 10 15 " << n - 31 << '\n';
}
else cout << "6 10 14 " << n - 30 << '\n';
}
}
return 0;
}