voidsolve(){ int n, k, x; std::cin >> n >> k >> x; if (x != 1) { std::cout << "YES\n" << n << '\n'; for (int i = 0; i < n; i++) std::cout << 1 << " \n"[i == n - 1]; return; }
// x == 1 if (k == 1) { std::cout << "NO\n"; return; } if (k == 2) { if (n & 1) { std::cout << "NO\n"; return; } else { std::cout << "YES\n" << n / 2 << '\n'; for (int i = 0; i < n; i += 2) { std::cout << 2 << " \n"[i == n - 2]; } return; } } // k >= 3 if (n == 1) { std::cout << "NO\n"; return; } // n >= 2 std::cout << "YES\n" << n / 2 << '\n'; while (n) { if (n & 1) { n -= 3; std::cout << 3 << " \n"[n == 0]; } else { n -= 2; std::cout << 2 << " \n"[n == 0]; } } }
intmain(){
int numTest; std::cin >> numTest; while (numTest--) { solve(); }