<나의풀이>
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 | class Solution { public int solution(String dartResult) { int answer = 0; String[] s = dartResult.split("[SDT*#]"); int[] num = new int[6]; int k=1; for(int i=0; i<s.length; i++){ if(!(s[i].equals(""))) num[k++]=Integer.parseInt(s[i]); } num[0]=0; num[4]=0; k=1; for(int i=0; i<dartResult.length(); i++){ switch(dartResult.charAt(i)){ case 'S': k++; break; case 'D': num[k]*=num[k]; k++; break; case 'T': num[k]*=num[k]*num[k]; k++; break; case '*': num[k-2]*=2; num[k-1]*=2; break; case '#': num[k-1]*=-1; break; default : break; } } answer =num[1]+num[2]+num[3]; return answer; } } | cs |