Argentine, Brazil, Colombia, Dominican Republic and Equator competed at the Olympic Games, placing first through fifth in an event. They said:
Argentine: "I was not last."
Brazil: "Canada got the bronze."
Canada: "Argentine ended behind Equator."
Dominican Republic: "Equator got silver."
Equator: "Dominican Republic didn't get gold."
The gold and silver winners lied, but the other three told the truth. How did the event end?
Who got Gold?
If the Argentinian, he would have told the truth saying that he wasn't last. If the Canadian, then the Brazilian lied, so he got Silver, but then the Dominican would be lying without having gold or silver. If the Dominican, the Equatorian would be lying, so he must have Silver, but then the Dominican would have told the truth. If the Equatorian, he would have told the truth saying that the Dominican didn't get gold. Thus, the only possibility is that the Brazilian got Gold.
Who got Silver?
If the Argentinian, he would be telling the truth. If the Canadian, then the Dominican would be telling the truth (since he didn't get gold or silver) but he would be lying. And if the Equatorian, he would be telling the truth. So, the Dominican got silver.
Who got Bronze?
Not the Canadian (because of what the Brazilian said) and not the Argentinian (as the Canadian is telling the truth, the Argentinian must be 4th or 5th), so the Equatorian got Bronze.
As the Argentinian didn't lie, he wasn't last: the Argentinian was 4th, and so the Canadian was 5th.