Minimum number of objects required to figure out the issue There 1,000 buckets, one of them contains poison, the rest of them are filled with water. They all look the same. If a pig drinks that poison, it will die within 30 minutes. What is the minimum number of pigs to you need to figure out which bucket contains the poison within one hour?
You can do it with $10$ pigs, based on the binary representation of a number. Mark the pigs $1, 2, ..., 10$. Given bucket number $n$, write $n$ in binary; every time the $k$th digit is $1$, have pig #$k$ drink. 

Wait for pigs to die. Form the appropriate number, putting $0$'s for every living pig in the appropriate place, and $1$'s otherwise. The number formed marks the bad bucket.

Note that I'm assuming that the pigs can drink from a lot of buckets quickly, and that more than one pig can drink from a bucket.
Okay, for the pig question, there are two ways for you to only need one, and it doesn't need to die 2/3 of the time. It depends on the "type" of pig for the first one.

Since certain practicalities are not specified, I'm going to suggest for the first scenario that your one pig be a poison-sniffing pig; since pigs have sensitive noses. The pigs sniffs out the poison, and you're done. 

The second scenario is a little messy, but it works: combine all of the buckets into one vat to dilute the poison. Pour the water into the buckets and give the pig one bucket. It the pig lives, then none of them are poisoned (at least for a pig), and if he dies, then all of them are: which brings me to my third option, which is to dump them all out and start over, you have all of this time and water is cheap, so quit being lazy and just refill them.