전체 글
-
[백준 재귀] 하노이 탑 이동 순서 C++ (복습 필요)Computer Science/백준 Boj 2023. 10. 28. 02:10
시간 복잡도는 이해가 안갔다. 탑이 2개 일 때 옮기는 알고리즘이 재귀적으로 일어나야 하기 때문에 2인 경우를 예로 문제를 풀었다. 1 2 1 3 2 3 위 순서 대로 출력어야 하므로 입력 인자가 a b c 순서로 주어지면 a -> b , a -> c(출력), b ->c 순서로 알고리즘을 짯다. #include #include using namespace std; void hanoi(int start, int mid, int end, int n) { if (n == 1) { cout
-
[백준, DP] 연속합 C++(복습필요)Computer Science/백준 Boj 2023. 10. 24. 19:53
https://www.acmicpc.net/problem/1912 1912번: 연속합 첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다. www.acmicpc.net 접근법 인덱스 계산 기억값 최대값 1 10 - 4 6 10 2 6 + 3 9 10 3 9 + 1 10 10 4 10 + 5 15 15 5 15 + 6 21 21 6 21 - 35 -14 21 7 -14 + 12 12 21 8 12 + 21 33 33 9 33 - 1 32 33 #include #include using namespace std; int main() { int n = 0; int answer ..
-
[백준, DP] 파도반 수열 C++Computer Science/프로그래머스 2023. 10. 24. 19:10
https://www.acmicpc.net/problem/9461 9461번: 파도반 수열 오른쪽 그림과 같이 삼각형이 나선 모양으로 놓여져 있다. 첫 삼각형은 정삼각형으로 변의 길이는 1이다. 그 다음에는 다음과 같은 과정으로 정삼각형을 계속 추가한다. 나선에서 가장 긴 변의 www.acmicpc.net #include #include using namespace std; int main() { int N = 0; int num = 0; cin >> N; vector DP = vector(101, 0); DP[0] = 1; DP[1] = 1; DP[2] = 1; for (int i = 3; i > num; cout
-
[백준 조합] 제출 C++Computer Science/백준 Boj 2023. 10. 23. 21:18
https://www.acmicpc.net/problem/11050 11050번: 이항 계수 1 첫째 줄에 \(N\)과 \(K\)가 주어진다. (1 ≤ \(N\) ≤ 10, 0 ≤ \(K\) ≤ \(N\)) www.acmicpc.net #include #include using namespace std; int factorial(int N) { if(N == 1 || N == 0) return 1; return N * factorial(N - 1); } int main() { int N = 0; int M = 0; cin >> N >> M; cout
-
[백준 조합] 팩토리얼 C++Computer Science/백준 Boj 2023. 10. 23. 21:17
https://www.acmicpc.net/problem/10872 10872번: 팩토리얼 0보다 크거나 같은 정수 N이 주어진다. 이때, N!을 출력하는 프로그램을 작성하시오. www.acmicpc.net #include #include using namespace std; int factorial(int N) { if(N == 1 || N == 0) return 1; return N * factorial(N - 1); } int main() { int N = 0; cin >> N; cout
-
[백준 조합] 녹색거탑 C++Computer Science/백준 Boj 2023. 10. 23. 21:15
https://www.acmicpc.net/problem/24723 24723번: 녹색거탑 Naver D2를 아시나요? D2는 For Developers, By Developers의 약자로, 개발자들을 위해 개발자들이 직접 만들어 가고 있는 네이버 개발자 지원 프로그램입니다. 네이버가 축적한 기술과 지식을 공유하고, 외 www.acmicpc.net #include #include using namespace std; int main() { int N; cin >> N; cout
-
[백준 조합] 베라의 패션 C++Computer Science/백준 Boj 2023. 10. 23. 21:15
https://www.acmicpc.net/problem/15439 15439번: 베라의 패션 베라는 상의 N 벌과 하의 N 벌이 있다. i 번째 상의와 i 번째 하의는 모두 색상 i를 가진다. N 개의 색상은 모두 서로 다르다. 상의와 하의가 서로 다른 색상인 조합은 총 몇 가지일까? www.acmicpc.net #include #include using namespace std; int main() { int N = 0; cin >> N; cout
-
[백준 DP] 01타일 C++Computer Science/백준 Boj 2023. 10. 23. 21:10
https://www.acmicpc.net/problem/1904 1904번: 01타일 지원이에게 2진 수열을 가르쳐 주기 위해, 지원이 아버지는 그에게 타일들을 선물해주셨다. 그리고 이 각각의 타일들은 0 또는 1이 쓰여 있는 낱장의 타일들이다. 어느 날 짓궂은 동주가 지원이 www.acmicpc.net 풀이 DP[1] = 1 1 DP[2] = 2 00, 11 DP[3] = 3 001, 100, 111 DP[4] = 5 0011, 1001, 1100, 1111 DP[5] = 8 00000, 00001, 00100, 10000, 00111, 10011, 11001, 11100 5까지의 경우의 수를 구하고 규칙성을 찾았다. 피보나치 수열을 따른다는 것을 알았다. #include using namespace..