Connection Status:
Competition Arena > ColorCode
SRM 250 · 2005-07-07 · by Softwalker · Simple Math
Class Name: ColorCode
Return Type: long
Method Name: getOhms
Arg Types: (vector<string>)
Problem Statement

Problem Statement

An electronics manufacturer has called you in to make a program to decode resistor color codes. You are given a String[] code containing three elements corresponding to the first three color bands on a resistor. Return the # of Ohms the resistor represents.

The first two bands of resistors represent the value, while the third is a multiplier, as shown in the following chart:
Color:      Value:       Multiplier:

black         0                   1
brown         1                  10
red           2                 100
orange        3               1,000
yellow        4              10,000
green         5             100,000
blue          6           1,000,000
violet        7          10,000,000
grey          8         100,000,000
white         9       1,000,000,000

For example if you are given { "yellow", "violet", "red" }, you would return 4700.

Notes

  • Actual resistors can have a 4th and even a 5th band representing the tolerance, and the amount the value might change in 1,000 hours of use, respectively, but for our purposes we will only deal with the first three bands.

Constraints

  • code consists of 3 elements each containing one of the color words above, all in lower case.
Examples
0)
{ "yellow", "violet", "red" }
Returns: 4700

The example from the problem statement.

1)
{ "green", "black", "black" }
Returns: 50
2)
{ "orange", "red", "blue" }
Returns: 32000000
3)
{ "green", "white", "red" }
Returns: 5900
4)
{ "violet", "yellow", "grey" }
Returns: 7400000000
6)
{ "white", "white", "white" }
Returns: 99000000000

The maximum possible.

Submissions are judged against all 12 archived test cases, of which 6 are shown here. Case numbers match the judge’s.

Coding Area

Language: C++17 · define a public class ColorCode with a public method long long getOhms(vector<string> code) · 12 test cases · 2 s / 256 MB per case

Submitting as anonymous