백준/파싱
-
1541 잃어버린 괄호백준/파싱 2022. 6. 28. 16:44
1. 풀이 다른 사람 블로그를 참고했다. 예를 들어서 설명하겠다. 10 + 20 - 30 + 40 - 50 + 60 괄호를 쳐서 주어진 입력의 결과를 최소값으로 만들라고 했다. 핵심은 - 부호를 이용하는 것이다. 즉, 위의 예제에서는 10 + 20 - (30 + 40) - (50 + 60) 이 된다. 이처럼 - 부호 뒤에 ( 괄호를 치고 다음 - 부호가 나오기 전에 ) 괄호를 쳐주면 된다. 즉, 음수값이 크게 만들면 된다. 단계 1 제일 먼저 입력값을 String 으로 받는다. 단계 2 - 부호를 기준으로 입력값을 분리해준다. 단계 3 분리된 입력값을 각각 + 연산한다. 단계 4 맨 앞에 있는 값 제외하고 모두 - 연산하면 된다. 즉, 30 - 70 - 110 = -150 이 정답이 된다. 2. 최종 코..
-
22867 종점백준/파싱 2022. 6. 9. 21:57
1. 풀이 1) 입력값 변환 예제에 보면 입력값이 06:00:00.000 06:30:00.000 이런식으로 되어 있다. 이 값들을 String으로 받은 뒤, : 와 .를 공백으로 바꿔준다. 이때 replaceAll 메서드를 사용한다. 06:00:00.000 이 값이 String a 라고 하면, a= a.replaceAll("[.:]", ""); 이런식으로 바꿔주면 된다. 1) 앞부분 => "[.:]" 정규표현식을 사용한 것이다. 즉 문자 "." 또는 ":" 를 의미한다. 2) 뒷부분 => "" 즉 공백을 의미한다. 3) 결론 => 문자 "." 또는 ":" 를 공백으로 바꾸라는 의미이다. 그러면 06:00:00.000 이 값은 replaceAll 메서드 적용 뒤 060000000 이렇게 된다. 그 후 이 ..