6 ms·
Here's how I solved it mathematically: Farmer 1 has 10 chickens. Farmer 2 has 16 chickens. Farmer 3 has 26 chickens. Price before lunch: x Price aft
by rileyjshaw 12y ago
Here's how I solved it mathematically:
Farmer 1 has 10 chickens.
Farmer 2 has 16 chickens.
Farmer 3 has 26 chickens.
Price before lunch: x
Price after lunch: y
# of chickens sold before lunch by farmers 1, 2, 3: a, b, c
Total earned by each farmer: $35
We're told that,
x > y
and can logically deduce that,
a > b > c
because otherwise, the farmers with less chickens would have no chance of making the same amount as the other farmer.*
From this information, we know that:
ax + (10 - a)y = bx + (16 - b)y = cx + (26 - c)y = 35
Let's isolate the first and second farmers here:
ax + (10 - a)y = bx + (16 - b)y
ax - ay + 10y + bx - by + 16y = 0
(a - b)(x - y) = 6y
We can do the same between farmers 1 and 3:
(a - c)(x - y) = 16y
These two formulas yield,
(a - b) = (3 / 8)(a - c)
Since a > b > c,
(a - b) > 0
(a - c) > 0
Since farmer 1 only has 10 chickens,
a ≤ 10
Since you can't sell negative chickens,
b ≥ 0
c ≥ 0
And since the problem isn't very interesting if the farmers are allowed to sell half-chickens, a, b, and c (and the difference between them) are integers.
Given all of this, 0 ≤ (a - b), (a - c) ≤ 10. The only numbers that satisfy this and,
(a - b) = (3 / 8)(a - c)
are,
(a - b) = 3
(a - c) = 8
Since c ≥ 0 and a ≤ 10, we have three triplets to consider:
a = 10: {10, 7, 1}
a = 9: {9, 6, 1}
a = 8: {8, 5, 0}
We can find the relationship between x and y from an earlier equation:
(a - b)(x - y) = 6y
3(x - y) = 6y
3x = 9y
x = 3y
So the farmers reduced their price to a third of the original price during the afternoon. What a deal!
We've got a few equations that look like,
ax + (10 - a)y = 35
Which we can now simplify to,
2ay + 10y = 35
By plugging [10, 9, 8] into the above formula, the only value that gives us a proper dollar amount for y is a = 9.
So...
y = $1.25
x = $4.25
Reading through the G+ comments it looks like someone beat me to it, but I figured I'd share my solution anyway.
*This is assuming that they didn't decide to "sell" their chickens for $0 in the afternoon, which is probably a safe bet.
Edit: add intermediate steps for clarity
- botzi2001 12y agoOne small mistake at the end: x = $1.25 y = $3.75
- deleted 12y ago[deleted]
- _paulc 12y agoExcept that I get a different answer if you do a very simple bruteforce: def check(n,am,pm,total): for x in range(1,n): if (am * x + pm * (n-x)) == total: return "AM: %d @ %d / PM %d @ %d" % (x,am,n-x,pm) return None def solve(total,birds): for am in range(1,total): for pm in range(1,am): result = list(map(lambda n:check(n,am,pm,total),birds)) if all(result): return result print(solve(3500,[10,16,26]))
- deleted 12y ago[deleted]
- Tloewald 12y agoSetting aside the trivial arithmetic error, I think a simpler attack approach comes from the first two farmers collectively having 26 chickens and making twice as much money as the third, giving you a simpler starting point.
- rileyjshaw 12y agoo______o oh my. this is why one shouldn't do math at 4am. :s/4.25/3.75