본문 바로가기

수학159

[백준] 2729번 : 이진수 덧셈 (C++) 2729번 : 이진수 덧셈 문제) 이진수 덧셈은 매우 간단하고, 십진수 덧셈과 비슷하게 하면 된다. 십진수 덧셈을 할 때는, 오른쪽부터 왼쪽으로 차례대로 숫자 하나씩 더하면 된다. 이진수 덧셈도 이와 비슷하게 하면 된다. 십진수 덧셈은 외워야 할 덧셈이 많지만, 이진수 덧셈은 아래와 같이 5가지만 기억하면 된다. 0 + 0 = 0 1 + 0 = 1 0 + 1 = 1 1 + 1 = 10 1 + 1 + 1 = 11 두 이진수가 주어졌을 때, 그 합을 이진수로 출력하는 프로그램을 작성하시오. 입력 : 첫째 줄에 테스트 케이스의 수 T(1 t; // 널널하게 200자리까지 탐색 bitset a, b; while (t--) { cin >> a >> b; bitset c; int flag = 0; for (int .. 2023. 11. 22.
[백준] 17128번 : 소가 정보섬에 올라온 이유 (C++) 17128번 : 소가 정보섬에 올라온 이유 문제) 소 N마리가 정보섬에 올라왔다! 소들은 정보섬 1층 앞마당에서 A1, A2, A3, ⋯, AN, A1의 순서대로 동그랗게 앉아 쉬고 있다. 각 소들에게는 품질 점수 Ai가 적힌 스티커가 붙어 있다. 욱제는 소 떼 옆에서 효빈이가 계산해 둔 어떤 계산 식을 발견했는데, 그것은 아래와 같다. "S = ∑(Ai × Ai₊₁ × Ai₊₂ × Ai₊₃) (단, Ai₊₄ = Ai, Ai₊₅ = Ai₁, Ai₊₆ = Ai₂)" 풀어 쓰자면, 원형으로 둘러 앉은 소들에 대해서, 연속한 네 마리 소들의 품질 점수를 곱한 값을 모두 더한 것이다. 욱제는 효빈이가 학교를 떠나지 못하도록 심술부릴 작정이다. 욱제는 총 Q번에 걸쳐 어떤 i번째 소를 선택할 것이다. 그러고는 A.. 2023. 10. 12.
[백준] 20444번 : 색종이와 가위 (C++) 20444번 : 색종이와 가위 문제) 오늘도 역시 준성이는 어김없이 색종이와 쿼리를 푸는 데 실패하였다!! 색종이에 열등감을 느낀 준성이는 가위로 눈에 보이는 색종이를 모두 잘라 버리려고 한다!! 색종이를 자를 때는 다음과 같은 규칙을 따른다. 색종이는 직사각형이며, 색종이를 자를 때는 한 변에 평행하게 자른다. 자르기 시작했으면, 경로 상의 모든 색종이를 자를 때까지 멈추지 않는다. 이미 자른 곳을 또 자를 수 없다. 분노에 찬 가위질을 하던 준성이는 갑자기 하나의 색종이를 정확히 n번의 가위질로 k개의 색종이 조각으로 만들 수 있는지 궁금해졌다. 궁금하지만 화가 나서 코딩에 집중할 수 없는 준성이 대신 코드를 작성해주도록 하자. 입력 : 첫 줄에 정수 n, k가 주어진다. (1 ≤ n ≤ 2^31-1.. 2023. 10. 11.
[백준] 19939번 : 박 터뜨리기 (C++) 19939번 : 박 터뜨리기 문제) K개의 팀이 박 터트리기 게임을 한다. 각 팀은 하나의 바구니를 가지고 있고, 바구니에 들어있는 공을 던져서 자기 팀의 박을 터트려야 한다. 우리는 게임을 준비하기 위해서, N개의 공을 K개의 바구니에 나눠 담아야 한다. 이때, 게임의 재미를 위해서 바구니에 담기는 공의 개수를 모두 다르게 하고 싶다. 즉, N개의 공을 K개의 바구니에 빠짐없이 나누어 담는데, 각 바구니에는 1개 이상의 공이 있어야 하고, 바구니에 담긴 공의 개수가 모두 달라야 한다. 게임의 불공정함을 줄이기 위해서, 가장 많이 담긴 바구니와 가장 적게 담긴 바구니의 공의 개수 차이가 최소가 되도록 담을 것이다. 공을 바구니에 나눠 담기 위한 규칙을 정리하면 다음과 같다. N개의 공을 K개의 바구니에 .. 2023. 10. 6.