반응형
https://www.acmicpc.net/problem/1076
시간 제한 | 메모리 제한 | 제출 | 정답 | 맞은 사람 | 정답 비율 |
---|---|---|---|---|---|
2 초 | 128 MB | 16623 | 6600 | 5656 | 40.034% |
문제
전자 제품에는 저항이 들어간다. 저항은 색 3개를 이용해서 그 저항이 몇 옴인지 나타낸다.
처음 색 2개는 저항의 값이고, 마지막 색은 곱해야 하는 값이다.
저항의 값은 다음 표를 이용해서 구한다.
색 | 값 | 곱 |
---|---|---|
black | 0 | 1 |
brown | 1 | 10 |
red | 2 | 100 |
orange | 3 | 1000 |
yellow | 4 | 10000 |
green | 5 | 100000 |
blue | 6 | 1000000 |
violet | 7 | 10000000 |
grey | 8 | 100000000 |
white | 9 | 1000000000 |
예를 들어, 저항에 색이 yellow, violet, red였다면 저항의 값은 4,700이 된다.
입력
첫째 줄에 첫 번째 색, 둘째 줄에 두 번째 색, 셋째 줄에 세 번째 색이 주어진다. 색은 모두 위의 표에 쓰여 있는 색만 주어진다.
출력
입력으로 주어진 저항의 저항값을 계산하여 첫째 줄에 출력한다.
예제 입력 1 복사
yellow
violet
red
예제 출력 1 복사
4700
코드
import java.util.HashMap;
import java.util.Scanner;
public class resistance_1076 {
public static void main(String[] args) {
Scanner key = new Scanner(System.in);
HashMap<String, String> map = new HashMap<String, String>();
map.put("black", "0,1");
map.put("brown", "1,10");
map.put("red", "2,100");
map.put("orange", "3,1000");
map.put("yellow", "4,10000");
map.put("green", "5,100000");
map.put("blue", "6,1000000");
map.put("violet", "7,10000000");
map.put("grey", "8,100000000");
map.put("white", "9,1000000000");
String first = key.next();
String second = key.next();
String third = key.next();
key.close();
String[] get1 = map.get(first).split(",");
String[] get2 = map.get(second).split(",");
String[] get3 = map.get(third).split(",");
Long result = Long.parseLong(get1[0]+get2[0]) * Long.parseLong(get3[1]);
System.out.println(result);
}
}
반응형
'알고리즘 > [ Baekjoon ]' 카테고리의 다른 글
[ BOJ ][JAVA][1158] 요세푸스 문제 (0) | 2021.04.17 |
---|---|
[ BOJ ][JAVA][1107] 리모컨 (0) | 2021.04.17 |
[ BOJ ][JAVA][1062] 가르침 (0) | 2021.04.17 |
[ BOJ ][JAVA][1018] 체스판 다시 칠하기 (0) | 2021.04.17 |
[ Baekjoon ][JAVA][7812] 중앙 트리 (0) | 2020.10.20 |