diff --git a/programmers/[1차] 다트 게임/solution.java b/programmers/[1차] 다트 게임/solution.java index 8081243..8128251 100644 --- a/programmers/[1차] 다트 게임/solution.java +++ b/programmers/[1차] 다트 게임/solution.java @@ -3,41 +3,25 @@ import java.util.HashMap; class Solution { public int solution(String dartResult) { - int answer = 0; - int c = 0; - int a = 1; - int b = 0; - - int ind = 0; + int answer, a, b, ind, data = ind = b = a = answer = 0; int len = dartResult.length(); - int data = 0; HashMap db = new HashMap<>(); - while(c < 3){ + for(int c = 0; c < 3; c++){ int d = 0; b = Character.getNumericValue(dartResult.charAt(ind)); if(dartResult.charAt(ind+1) == '0') { - d = 1; - b = 10; + d = 1; b = 10; } switch(dartResult.charAt(ind+1+d)){ - case 'S': - a = 1; - break; - case 'D': - a = 2; - break; - case 'T': - a = 3; - break; + case 'S': a = 1; break; + case 'D': a = 2; break; + case 'T': a = 3; break; } data = (int)Math.pow(b,a); - System.out.println(data+" "+a+" "+b); db.put(c,data); if(ind+d+2 < len){ if(dartResult.charAt(ind+d+2) == '*'){ - if(c > 0) { - db.put(c-1,db.get(c-1)*2); - } + if(c > 0) db.put(c-1,db.get(c-1)*2); db.put(c,db.get(c)*2); ind += 3+d; } @@ -46,8 +30,6 @@ class Solution { ind += 3+d; } else ind += 2+d; } - c++; - } for (int i = 0; i < 3; i++){ answer += db.get(i);