c++(296)
-
[백준 BOJ] 20001번 고무오리 디버깅 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/20001 20001번: 고무오리 디버깅 백준 문제 풀이에 힘들어하는 수진이를 위해 민우는 문제해결에 도움이 되는 고무오리를 준비했다. 민우가 준비한 고무오리는 신비한 능력이 존재하는데, 최근에 풀던 백준 문제를 해결해주는 www.acmicpc.net 접근 방법 - 스택을 이용한 연산 문제 백준의 20001번 문제는 스택을 이용하여 해결해야 하는 문제이다. 해당 문제는, "고무오리"와 "문제"만으로 이루어져 있는 입력값에 대하여, 문제를 모두 해결할 수 있는지에 대한 여부를 구해야 하는 문제이다. (문제에 대한 자세한 설명은 위를 참고하길 바란다.) 필자는 문제의 흐름대로 코드를 작성하였는데, 스택에 대해 알고 있다면 쉽게 풀 수 있는 ..
2022.02.17 -
[백준 BOJ] 15552번 빠른 A+B (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/15552 15552번: 빠른 A+B 첫 줄에 테스트케이스의 개수 T가 주어진다. T는 최대 1,000,000이다. 다음 T줄에는 각각 두 정수 A와 B가 주어진다. A와 B는 1 이상, 1,000 이하이다. www.acmicpc.net 접근 방법 - 빠른 입출력을 위한 팁을 알려주는 문제 백준의 15552번 문제는 빠른 입출력을 위한 명령문을 알려주는 문제이다. 해당 문제에선 C++, Java, Python 등에서의 빠른 입출력을 위한 구문을 안내하고 있다. 필자의 경우엔 주로 C++로 ps를 진행하기 때문에 문제 설명에 제시되어있는 C++ 구문을 사용해보았다. 필자는 아래처럼 코드를 작성하여 해당 문제를 해결하였다. ps를 할 때 시..
2022.02.14 -
[백준 BOJ] 11866번 요세푸스 문제 0 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/11866 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net 접근 방법 - 큐를 이용한 연산 문제 백준의 11866번 문제는 큐를 이용하여 해결해야 하는 수학적 사고력 문제이다. 해당 문제는, n개의 숫자에 대해 a번째 숫자를 순차적으로 제거하면서, 요세푸스 순열을 만들어야 하는 문제이다. (문제에 대한 자세한 설명은 위를 참고하길 바란다.) 필자는 이 문제를 해결할 때, 제거해야 할 숫자는 바로 출력하며 pop 연산을 취하게끔 하였다. 다만 아닌 경우에는 해당 숫자에 대해 다시 큐에 push 연산을 취한 뒤에 pop 연산을 취하..
2022.02.13 -
[백준 BOJ] 11050번 이항 계수 1 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/11050 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net 접근 방법 - 재귀 알고리즘을 사용하는 수학 문제 백준의 11050번 문제는 재귀 함수를 사용하여 해결해야 하는 수학 문제이다. 해당 문제는, 입력받은 두 숫자에 대한 이항 계수 연산의 결괏값을 출력해야 하는 문제이다. 여기서, 이항 계수의 연산은 아래처럼 수행된다. 위를 보면 !(팩토리얼) 연산이 있는데, 바로 이 연산을 재귀 알고리즘으로 표현해야 한다. 보통 팩토리얼 연산을 위한 재귀 함수는 제어 변수인 n이 1일 때까지만 고려한다. 하지만 필자는 해당 문제..
2022.02.12 -
[백준 BOJ] 10866번 덱 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/10866 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 접근 방법 - 덱을 이용한 기본 문제 백준의 10866번 문제는 자료 구조 중 덱을 이용한 기본적인 문제이다. 해당 문제는 덱 구조에서 실행 가능한 행위를 모두 갖춘 프로그램을 만들어야 하는 문제이다. 이전에 스택 문제와 큐 문제에 관련하여 작성한 글이 있다. 아래에 링크를 기재해놓으니, 생소하다면 참고해보는 것도 좋을 것이다. https://smary-it.tistor..
2022.02.09 -
[백준 BOJ] 10845번 큐 (C++/cpp)
문제 설명 https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 접근 방법 - 큐를 이용한 기본 문제 백준의 10845번 문제는 자료 구조 중 큐를 이용한 기본적인 문제이다. 해당 문제는 큐 구조에서 실행 가능한 행위를 모두 갖춘 프로그램을 만들어야 하는 문제이다. 이전에 큐가 아닌 스택 문제와 관련하여 작성한 글이 있다. 아래에 링크를 기재해놓으니, 생소하다면 참고해보는 것도 좋을 것이다. https://smary-it.tistor..
2022.02.09