1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
--- Part Two ---
Next, you should verify the [1m[37mlife support rating[0m, which can be determined by multiplying
the [1m[37moxygen generator rating[0m by the [1m[37mCO2 scrubber rating[0m.
Both the oxygen generator rating and the CO2 scrubber rating are values that can be found in your
diagnostic report - finding them is the tricky part. Both values are located using a similar process
that involves filtering out values until only one remains. Before searching for either rating value,
start with the full list of binary numbers from your diagnostic report and [1m[37mconsider just
the first bit[0m of those numbers. Then:
- Keep only numbers selected by the [1m[37mbit criteria[0m for the type of rating value for
which you are searching. Discard numbers which do not match the bit criteria.
- If you only have one number left, stop; this is the rating value for which you are searching.
- Otherwise, repeat the process, considering the next bit to the right.
The [1m[37mbit criteria[0m depends on which type of rating value you want to find:
- To find [1m[37moxygen generator rating[0m, determine the [1m[37mmost common[0m value (0 or
1) in the current bit position, and keep only numbers with that bit in that position. If 0 and 1 are
equally common, keep values with a [1m[37m1[0m in the position being considered.
- To find [1m[37mCO2 scrubber rating[0m, determine the [1m[37mleast common[0m value (0 or 1)
in the current bit position, and keep only numbers with that bit in that position. If 0 and 1 are
equally common, keep values with a [1m[37m0[0m in the position being considered.
For example, to determine the [1m[37moxygen generator rating[0m value using the same example
diagnostic report from above:
- Start with all 12 numbers and consider only the first bit of each number. There are more 1 bits
(7) than 0 bits (5), so keep only the 7 numbers with a 1 in the first position: 11110, 10110, 10111,
10101, 11100, 10000, and 11001.
- Then, consider the second bit of the 7 remaining numbers: there are more 0 bits (4) than 1 bits
(3), so keep only the 4 numbers with a 0 in the second position: 10110, 10111, 10101, and 10000.
- In the third position, three of the four numbers have a 1, so keep those three: 10110, 10111, and
10101.
- In the fourth position, two of the three numbers have a 1, so keep those two: 10110 and 10111.
- In the fifth position, there are an equal number of 0 bits and 1 bits (one each). So, to find the
[1m[37moxygen generator rating[0m, keep the number with a 1 in that position: 10111.
- As there is only one number left, stop; the [1m[37moxygen generator rating[0m is 10111, or
[1m[37m23[0m in decimal.
Then, to determine the [1m[37mCO2 scrubber rating[0m value from the same example above:
- Start again with all 12 numbers and consider only the first bit of each number. There are fewer 0
bits (5) than 1 bits (7), so keep only the 5 numbers with a 0 in the first position: 00100, 01111,
00111, 00010, and 01010.
- Then, consider the second bit of the 5 remaining numbers: there are fewer 1 bits (2) than 0 bits
(3), so keep only the 2 numbers with a 1 in the second position: 01111 and 01010.
- In the third position, there are an equal number of 0 bits and 1 bits (one each). So, to find the
[1m[37mCO2 scrubber rating[0m, keep the number with a 0 in that position: 01010.
- As there is only one number left, stop; the [1m[37mCO2 scrubber rating[0m is 01010, or
[1m[37m10[0m in decimal.
Finally, to find the life support rating, multiply the oxygen generator rating (23) by the CO2
scrubber rating (10) to get [1m[37m230[0m.
Use the binary numbers in your diagnostic report to calculate the oxygen generator rating and CO2
scrubber rating, then multiply them together. [1m[37mWhat is the life support rating of the
submarine?[0m (Be sure to represent your answer in decimal, not binary.)
|