
-Code
class Solution {
public String addBinary(String a, String b) {
int aIndex = a.length() - 1;
int bIndex = b.length() - 1;
int now = 0;
StringBuilder answer = new StringBuilder();
// 마지막 수부터 더하기
while (now > 0 || aIndex >= 0 || bIndex >= 0) {
if (aIndex >= 0) {
now += a.charAt(aIndex--) - '0';
}
if (bIndex >= 0) {
now += b.charAt(bIndex--) - '0';
}
// 더한값이 2보다 크면 나머지
answer.append(now % 2);
// 다음 자리로 넘어갈 값
now /= 2;
}
return answer.reverse().toString();
}
}
'Beakjoon&프로그래머스 > Java' 카테고리의 다른 글
| [LeetCode/Java] 70. Climbing Stairs (0) | 2025.11.22 |
|---|---|
| [LeetCode/Java] 69. Sqrt(x) (0) | 2025.11.22 |
| [백준/Java] 27445번 Gorani Command (0) | 2025.11.22 |
| [백준/Java] 34687번 라면 끓여 먹자 야호 (0) | 2025.11.21 |
| [LeetCode/Java] 66. Plus One (0) | 2025.11.21 |