-
백준 1225 - 이상한 곱셈(JAVA)Algorithm 2022. 9. 20. 09:48728x90
오늘 풀어볼 문제는 백준 1225번 이상한 곱셈이다.
문제는 위 링크를 참조하자.
※ 알고리즘
1. 숫자 두개를 입력받는다.
2. 두개의 숫자를 이중 for문으로 순회하며 각 숫자를 뽑아내면 된다.
3. 숫자를 string형으로 뽑아내어야 charAt()을 사용하여 쉽게 한자리씩 뽑아낼 수 있다.
4. 결과 변수에 더하고 출력
알고리즘을 그대로 구현하면 위와 같다.
String 형태의 A와 B 숫자를 length()로 처음부터 끝까지 비교해 준다.
String 형태 이기 때문에 charAt() - '0' 을 해 주면 한 자리씩 깔끔하게 알파벳 형태로 뽑아낼 수 있다.
해당 문자들을 더해서 result 변수에 담아 출력하면 된다.
★ 주의 사항
이 문제에서 엄청난 함정이 숨어 있었다. 처음엔 result 변수를 int로 받고 정답이 출력되어 백준 사이트에 채점을 해보니 틀렸다고 나왔다. 아무리 봐도 틀린 지점이 없었고 임의의 수를 넣고 비교해 보아도 문제가 없었다. 이해가 되지 않아 구글링을 해보니 result변수가 long 타입으로 받아야만 한다는 것을 알 수 있었다. 숫자가 엄청 커질 수 있다는 생각을 전혀 하지 않았었는데 앞으로는 이런 부분들까지도 꼼꼼하게 생각해 보는 습관을 길러야 겠다고 생각하는 계기가 되었다.
728x90'Algorithm' 카테고리의 다른 글
백준 14467 - 소가 길을 건너간 이유(JAVA) (0) 2022.09.25 백준 2902 - KMP는 왜 KMP일까? (JAVA) (0) 2022.09.20 백준 2798 - 블랙잭(JAVA) (0) 2022.09.18 백준 2231 - 분해합(JAVA) (0) 2022.09.16 백준 1173 - 운동(JAVA) (0) 2022.09.16