My brother and father were playing golf one day, and they caught up to a group that was part of a tournament. The group members explained that the tournament's rules were unconventional:
- The golfer with the best score must have cheated, so that person is eliminated.
- The golfer with the second-best score must have choked (definition, example), so that person is eliminated.
- Therefore, the golfer with the third-best score wins.
Write a function that takes a vector of scores and determines the winner of this tournament (i.e., the number of the golfer with the third-best score). Remember that the objective in golf is to get a low score. You can assume that if two golfers tie for the best score, a playoff would separate them, and the player with the original second lowest score would win. If two golfers tie for the second-best score, eliminate them both. Let's ignore the possibility of a tie for third-best score; the organizers of the tournament probably had everyone figure it out at the 19th hole.
Solution Stats
Problem Comments
2 Comments
Solution Comments
Show comments
Loading...
Problem Recent Solvers21
Suggested Problems
-
Construct an index vector from two input vectors in vectorized fashion
448 Solvers
-
365 Solvers
-
Rounding off numbers to n decimals
5501 Solvers
-
Combined Ages 1 - Symmetric, n = 3
314 Solvers
-
10668 Solvers
More from this Author321
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
The problem description is a bit unclear. Suppose that x = [70 71 73 74 73 70 72]. Then golfer #7 has the third best score; but since there's two golfers tied for first place (#1 and #6) and we're supposed to imagine a play-off then, I would suspect that the correct answer here is actually 2 rather than 7. Would be nice to get a clarification.
Yes, that's correct. The order would be 70a, 70b, 71, so the golfer with 71 would be third and win.