본문 바로가기

구현268

[백준] 1252번 : 이진수 덧셈 (C++) 1252번 : 이진수 덧셈 문제) 두 개의 이진수를 입력받아 이를 더하는 프로그램을 작성하시오. 입력 : 첫째 줄에 두 개의 이진수가 빈 칸을 사이에 두고 주어진다. 각 이진수는 1 또는 0으로만 이루어져 있으며, 0으로 시작할 수도 있다. 또한 각 이진수의 길이는 80을 넘지 않는다. 출력 : 첫째 줄에 이진수 덧셈 결과를 출력한다. 결과가 0인 경우를 제외하고는 출력되는 이진수는 항상 1로 시작해야 한다. 풀이) 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 46 47 48 49 50 51 52 53 54 55 56 57 5.. 2024. 2. 22.
[백준] 1421번 : 나무꾼 이다솜 (C++) 1421번 : 나무꾼 이다솜 문제) 이다솜은 나무꾼이다. 이다솜은 산신령이 준 금도끼와 은도끼를 이용해서 나무를 열심히 했다. 나무가 끝난 후에 나무들을 쳐다보면서 내가 왜 나무를 하면서 살까 생각하다가, 나무가 엄청나게 값어치가 있다는 것을 알고 나무를 팔러 시장에 가기로 했다. 지역 목재상에서 이다솜의 나무를 사려고 했지만, 너무 길이가 제멋대로여서 나무를 사는 것을 거절을 했다. 목재상의 조건은 일단 팔려고 하는 나무의 길이를 전부 같게 만들어 오라는 것이었다. (나무의 길이는 자연수로) 이다솜은 나무를 하나씩 여러 번 팔려고 했지만, 지역 목재상의 주인은 한 사람에게 평생 단 한번의 판매 기회를 제공하다고 했기 때문에, 이다솜은 근처 작업장으로 가서 나무를 자르기로 했다. 작업장에서 나무를 한 번.. 2024. 2. 13.
[백준] 24523번 : 내 뒤에 나와 다른 수 (C++) 24523번 : 내 뒤에 나와 다른 수 문제) 길이가 N인 수열 1 2 ⋯ A_1 , A_2 , ..., A_N이 주어진다. 1 ≤ i ≤ N인 정수 i마다 i < j ≤ N이고 A_i ≠ A_j인 정수 j중 최솟값을 출력하라. 만약 이러한 j가 없다면 −1을 출력하라. 입력 : 첫째 줄에 수열 A의 크기 N이 주어진다. 둘째 줄에는 1 2 ⋯ A_1 A_2 A_N이 공백으로 구분되어 주어진다. (1≤ N ≤10^6, −10^9≤ A_i ≤10^9) 입력으로 주어지는 모든 수는 정수이다. 출력 : 각 i마다 조건을 만족하는 최솟값 j를 출력하라. 만약 이러한 j가 없다면 −1을 출력하라. 풀이) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 2.. 2024. 2. 8.
[백준] 14719번 : 빗물 (C++) 14719번 : 빗물 문제) 2차원 세계에 블록이 쌓여있다. 비가 오면 블록 사이에 빗물이 고인다. 비는 충분히 많이 온다. 고이는 빗물의 총량은 얼마일까? 입력 : 첫 번째 줄에는 2차원 세계의 세로 길이 H과 2차원 세계의 가로 길이 W가 주어진다. (1 ≤ H, W ≤ 500) 두 번째 줄에는 블록이 쌓인 높이를 의미하는 0이상 H이하의 정수가 2차원 세계의 맨 왼쪽 위치부터 차례대로 W개 주어진다. 따라서 블록 내부의 빈 공간이 생길 수 없다. 또 2차원 세계의 바닥은 항상 막혀있다고 가정하여도 좋다. 출력 : 2차원 세계에서는 한 칸의 용량은 1이다. 고이는 빗물의 총량을 출력하여라. 빗물이 전혀 고이지 않을 경우 0을 출력하여라. 풀이) 1 2 3 4 5 6 7 8 9 10 11 12 13 1.. 2024. 1. 27.