circularsquare
circularsquare
Branch Unspecified
04 Apr 2012

Simple Puzzle on unequal weights.

You are given a weighing scale and 8 bags of rice. Seven bags are of equal weight. One is of a slightly heavier weight. You can compare the bags using the weighing scale. (note it doesn't give weight in kgs it gives just the comparison)

What is the minimum number of times you will have to perform a measurement on the weighing scale so that you can pinpoint the heavier bag.

Note :- 1) you can't use own hands to compare , the bag is heavier only slightly so only weighing scale can detect the difference.
2) weighing scale can hold an infinite weight on it.

Happy Puzzling. When you give answer , also show reasoning for benefit of others as is the custom of puzzles.😀
Many of you may have solved this one before in aptitude exams, it is common puzzle.
silverscorpion

silverscorpion

Branch Unspecified
7 years ago
I can do it in 2 weighings.

Separate the bags into groups of three, and you will get three groups, 2 with 3 bags in it and 1 with 2 bags.

Now, weigh both the groups that have 3 bags. If they are of equal weight, then the odd one is in the other 2. If they are not equal, then whichever group is shown as heavier has the odd bag.

Now, if the heavier bag is in a group of 3, take any 2 bags from the group and compare. Depending on the result, you can tell which one is heavier.
If it is in the group of 2, weigh them and similarly, you can tell which is heavier.

So, the minimum number of weighings necessary would be two.
Bionic

Bionic

Branch Unspecified
7 years ago
The minimum time of weighing is 4 times.

You separate the bags into 4 groups of 2 bags each, since the weighing scale can only accept two bags at a time so, certainly weighing the bags in group of two, the bag thats slightly heavier will show up.
Bionic

Bionic

Branch Unspecified
7 years ago
The minimum time of weighing is 4 times.

You separate the bags into 4 groups of 2 bags each, since the weighing scale can only accept two bags at a time so, certainly weighing the bags in group of two, the bag thats slightly heavier will show up.
circularsquare

circularsquare

Branch Unspecified
7 years ago
silverscorpion
I can do it in 2 weighings.

Separate the bags into groups of three, and you will get three groups, 2 with 3 bags in it and 1 with 2 bags.

Now, weigh both the groups that have 3 bags. If they are of equal weight, then the odd one is in the other 2. If they are not equal, then whichever group is shown as heavier has the odd bag.

Now, if the heavier bag is in a group of 3, take any 2 bags from the group and compare. Depending on the result, you can tell which one is heavier.
If it is in the group of 2, weigh them and similarly, you can tell which is heavier.

So, the minimum number of weighings necessary would be two.
The answer is correct and the reasoning too. Well done.
Bionic

Bionic

Branch Unspecified
7 years ago
What was I thinking? Oh my God...
circularsquare

circularsquare

Branch Unspecified
7 years ago
Bionic
What was I thinking? Oh my God...
Perhaps you didn't take into consideration the fact that the scale can handle infinite weight. Hence one could keep 3 bags on each side at once :-
circularsquare
2) weighing scale can hold an infinite weight on it.
Bionic

Bionic

Branch Unspecified
7 years ago
circularsquare
Perhaps you didn't take into consideration the fact that the scale can handle infinite weight. Hence one could keep 3 bags on each side at once :-
Yes Yes Yes Yes.....
I didn't even consider the inifinite no. Of weight the weighing scale can hold.
I was thinking its the fact that it can only hold two weights at once.
CE Designer

CE Designer

Branch Unspecified
7 years ago
What if we were using a digital scale? What would be the answer then?😨
7 years ago
CE Designer
What if we were using a digital scale? What would be the answer then?😨
That'd be another interesting puzzle! 😀
vinci

vinci

Computer Science
7 years ago
CE Designer
What if we were using a digital scale? What would be the answer then?😨
in that case precise answer may take number of iterations 😀 other wise i would go with 3 iterations beginning with 4 bags on each weigh ,the heavier one will be divided again into 2 weigh each and then finally i can come to results
Bionic

Bionic

Branch Unspecified
7 years ago
yeah it surely is....
CE Designer

CE Designer

Branch Unspecified
7 years ago
I have a solution with 4 iterations too, can anyone do it with less?
  1. I start with splitting them into 4 bags like vinci.
  2. Weigh both sets. Heavier set is what we want. Thats 2.
  3. Divide the heavier set in two (2 x 2).

Now it gets a little tricky, from the first time we weighed one set of four was heavier than the other. The lighter set, lets say it weighed 10kg. This is what the heavier set should weigh.
So two bags from this set would weigh 5kg.
Now back to step 3. We have 2 sets of two. We know one pair will weigh 5 and the other lets say 11.

4.Weigh again. Thats 3 times.
5.You will either get 5 kg or 6 kg. If you get 5kg you know the other pair has the heavier sack.
6.Weigh one from that pair to determine which is heavier. Thats 4.
7.If you get 6kg the first time just pull one off the scale and you will know which is heavier. Thats also 4.


I hope i explained well, I also hope someone gets it in less iterations (SS) 😎
CE Designer

CE Designer

Branch Unspecified
7 years ago
vinci
i would go with 3 iterations beginning with 4 bags on each weigh ,the heavier one will be divided
You would have to weigh the two sets of 4 to determine which is heavier
vinci

vinci

Computer Science
7 years ago
yes thats what i wrote their !! 2 sets of 4 bags on each weigh,the heavier will be further divided into two,again same procedure.The heavier of 2-2 bags set will be divided and lastly each weigh contains 1 bag each so got the answer at last
Bionic

Bionic

Branch Unspecified
7 years ago
Maniac, we are looking for way to reduce the no. of times we should weigh the weights to get the most minimum value possible.
and I think justice have been done to that.
silverscorpion

silverscorpion

Branch Unspecified
7 years ago
CE Designer
I hope i explained well, I also hope someone gets it in less iterations (SS) 😎
I tried.. I couldn't do it in 3 weighings.. So , I think 4 is the least number of weighings we can do it, using a digital balance.

By the way, it will be significantly more difficult if it's not known that one of the bags is "heavier" for sure.
That is, if it is only known that one of the bags is of a different weight than the others, and it's not specified whether it's heavier or lighter, it'll be more difficult. I think The minimum number of iterations required to identify the odd one, will also be more. Just try 😀
Bionic

Bionic

Branch Unspecified
7 years ago
silverscorpion
I tried.. I couldn't do it in 3 weighings.. So , I think 4 is the least number of weighings we can do it, using a digital balance.

By the way, it will be significantly more difficult if it's not known that one of the bags is "heavier" for sure.
That is, if it is only known that one of the bags is of a different weight than the others, and it's not specified whether it's heavier or lighter, it'll be more difficult. I think The minimum number of iterations required to identify the odd one, will also be more. Just try 😀
not true, try again ok?
silverscorpion

silverscorpion

Branch Unspecified
7 years ago
^^ You mean we can do it in less than three trials??
sookie

sookie

Branch Unspecified
6 years ago
In case of digital machine, this will be different but still minimum is 2 😉

Make same sets as for analog - 2 of 3 bags and 1 of 2 bags
Set 1: 3 bags (Bag1,Bag2,Bag3)
Set2: 3 bags (Bag4,Bag5,Bag6)
set 3: 2 bags (Bag7,Bag8)

Step1 :1st iteration weigh Bag7 out of Set3. Note down its value.

Step 2: 2nd iteration weigh Bag8 out of Set3. Note down its value.
If value of 1st iteration > val of 2nd ietration => Bag7 is heavier else Bag8 is heavier
If value of 1st iteration == val of 2nd iteration

Step3: Now take advantage of digital machine over analog
3rd iteration Put entire Set1 on machine
case 1 : If its value is exactly 3 times of Bag7/bag8 then
Add 1 bag Bag4 from Set2 if its value is exactly 4 times of Bag7/Bag8 or not if not then Bag4 is heavier else put another Bag5 from Set2 and check if its value is exactly 5 times of Bag7/Bag8 if not then Bag5 is heavier else remaining Bag6 is heavier
case 2: If its value is more than 3 times of Bag7/bag8 then
Remove one Bag3 from Machine if its weigh is exactly 2 times of Bag7/Bag8 then Bag3 is heavier else remove another Bag2 from Machine if its weigh is exactly equal to Bag7/Bag8 then Bag2 is heavier else Bag1 is heavier.

Is this the approach ?

Share this content on your social channels -

Only logged in users can reply.