Is the buckets of water problem in NP?
This problem is in NP, because it is &quot;exactly as hard&quot; as SUBSET-SUM problem. Moreover, it is, in some sense, the SUBSET-SUM problem in disguise! Let's show that.
Denote the number of buckets by $n$, their capacities by $c_1 \leqslant c_2 \leqslant \ldots \leqslant c_n$ and the original quantities of water in them by $a_1, a_2, \ldots, a_n$ (here I assume without loss of generality that the buckets are sorted by their capacities). I claim that the following statements are equivalent:

There exists a way to get exactly $m \in [0, c_n]$ water in some bucket.
There exists a subset $S$ of $\{1, 2, \ldots, n\}$, such that $\sum\limits_{i \in S} a_i \equiv m \pmod{\gcd(c_1, c_2, \ldots, c_n)}$.

To prove the $1 \Rightarrow 2$ implication, let's notice that, at every moment of time, the quantity of water in each bucket can be expressed as &quot;sum of $a_i$ over some subset of $\{1, 2, \ldots, n\}$&quot; $+$ &quot;some integer linear combination of $c_i$, with negative coefficients allowed&quot;. Indeed, we can check that all three allowed operations preserve this property. The latter part is divisible by $\gcd(c_1, c_2, \ldots, c_n)$, hence $m$ being possible to obtain implies the condition $2$.
The $2 \Rightarrow 1$ implication follows from the same type of the argument as I presented in the comments. I will reproduce it here for completeness. Indeed, suppose that $m \equiv \sum\limits_{i \in S} a_i \pmod{\gcd(c_1, c_2, \ldots, c_n)}$. Because $\gcd(c_1, c_2, \ldots, c_n)$ is representable as a linear combination of $c_i$, we can represent $m$ as an integer linear combination of $c_i$ and $a_i$, with all coefficients before $a_i$ being $0$ or $1$.
Clearly, it is enough to obtain $m \bmod c_1$ water somehow (after doing that, we can just repeatedly add $c_1$ of water). But, as long as we are interested in obtaining something only modulo $c_1$, we can replace all negative coefficients before $c_i$ in this sum with nonnegative ones (by adding $c_1$ appropriate number of times). Hence, we have a representation $m \equiv \sum\limits_{i \in S} a_i + \sum\limits_{i = 2}^n k_i c_i \pmod{c_1}$, where $k_i$ are some nonnegative integers.
Now, suppose that we have $x$ water in the $i$-th bucket and $y$ water in the first bucket. Then, we can get $(x + y) \bmod c_1$ water in the first bucket and make the $i$-th bucket empty. Indeed, try to move all the water from $i$-th bucket to the first. If $x + y &lt; c_1$, then we are done. Otherwise, the first bucket is full now and the $i$-th bucket contains $x + y - c_1$ water. Empty the first bucket and repeatedly drain $c_1$ of water from the $i$-th bucket, until there is only $(x + y) \bmod c_1$ water left. Then move all the water to the first bucket.
By doing the operation from the previous paragraph for all $i$ in $S$, we can get $\left( \sum\limits_{i \in S} a_i \right) \bmod c_1$ water in the first bucket (if $1$ is not in S, we need to empty the first bucket beforehand). Now, for each $i$ from $2$ to $n$, repeat the same operation $k_i$ times, but now fill the $i$-th bucket before the operation. In the end, the first bucket will contain exactly $\left( \sum\limits_{i \in S} a_i + \sum\limits_{i=2}^n k_i c_i \right) \bmod c_1 = m \bmod c_1$ water.
Hence, this problem is equivalent to some kind of &quot;modular subset sum&quot;, with modulo being equal to $\gcd(c_1, c_2, \ldots, c_n)$. As for NP witness, any witness for &quot;modular subset sum&quot; problem will do, for example the set $S$.
A more natural witness in the context of the original problem is a &quot;compressed sequence of operations&quot;, in the sense that we allow commands of the type &quot;repeat a given sequence of operations a given number of times&quot;. The proof above can be translated into such a witness, and a particularly simple one (no nested block commands, we repeat only some fixed short blocks, et cetera). I am not 100% sure whether it is possible to simulate a general compressed sequence of operations in polynomial time, but I am inclined to believe that the answer is &quot;yes, it is possible&quot;. However, it is definitely possible to simulate sequences arising from the above proof quickly, though requiring that makes the witness much less natural.
Indeed, the second part of the proof constructs a sequence of operations of polynomial length, but with a catch that the following two &quot;mega-operations&quot; are also allowed:

Given a bucket with $x$ water, repeatedly drain it by $c_1$, till there is only $x \bmod c_1$ water left. The first (the smallest) bucket should be empty before this operation. This operation is used repeatedly thorough the proof
If we have $m \mod c_1$ water in the first bucket, empty the largest bucket, move $m \mod c_1$ water into it and repeatedly add $c_1$ water until there is $m$ water in the largest bucket. Used only once in the end.

These &quot;mega-operations&quot; correspond to some simple arithmetical operations on the quantities of waters in the buckets and $c_i$'s, hence they can be carried quickly in the model of computation we are using, despite the fact that they take very large number of elementary operations with buckets.