알고리즘/백준2022. 3. 1. 21:28[python] 백준 2729번 이진수 덧셈
문제 풀이 간단하게 두 문자열을 받아 해당 문자를 정수로 바꿔준다. 바뀐 두 정수의 합을 구해 bin() 함수로 감싸주면 0b~~~~ 로 시작하는 이진수가 출력이 되는데 해당 0b를 잘라주어 출력해주면 된다. 완성된 코드!!😊👍 t = int(input()) for _ in range(t): n1, n2 = input().split() print(bin(int(n1, 2) + int(n2, 2))[2:])
알고리즘/백준2021. 8. 8. 20:03[java] 백준 1252번 이진수 덧셈
문제는 쉬워 보일 수 있다. 하지만 입력에서 각 이진수의 길이는 80을 넘지 않는다. 즉, 79자리인 입력이 들어올 경우 웬만한 자료형들은 범위를 벗어나 NumberFormat과 같은 런타임 에러가 발생할 수 있다. 여기서 써야할 클래스는 BigInteger 클래스, int, long, String으로 해보았지만 되는 것은 없었고 결론은 BigInteger 클래스였다. 나의 풀이 방법은 이렇다. 무한한 수를 담을 수 있는 BigInteger 클래스로 값을 담아서 문자열로 바꿔 준 후 문자열(2진수)을 다시 10진수로 변환시키기 위해서 BigInteger 클래스에 담아준다. 그리고 BigInteger의 add 메소드를 통해 10진수로 변환한 a와 b의 가산을 해주고 toString() 메소드로 다시 2진수..