본문 바로가기
반응형

백준18

[cpp 알고리즘] 백준 1992 쿼드트리 [백준] 1992 쿼드트리 풀이 분할정복, 재귀 문제 출처: https://www.acmicpc.net/problem/1992 문제 요약 - 모두 0으로만 되어 있으면 압축 결과는 "0" - 모두 1로만 되어 있으면 압축 결과는 "1" - 만약 0과 1이 섞여 있으면 전체를 한 번에 나타내지 않고, "왼쪽 위/ 오른쪽 위/ 왼쪽 아래/ 오른쪽 아래" 4개로 나누어 압축하고, 이 4개의 영역을 압축한 결과를 괄호 안에 묶어서 표현 예시 문제의 경우: (0(0011)(0(0111)01)1) 로 표현된다. 풀이 정리 1. 모두 0인지 확인, 모두 1인지 확인, 그렇지 않다면 분할정복 2. 분할정복 할 때 n=1인 경우는 먼저 종료시키고 아니면 1의 과정을 반복한다. c++ 코드 #include #include.. 2023. 11. 8.
[알고리즘 cpp] 백준 23246 Sport Climbing Combined #include #include #include #include using namespace std; int N; vector v; int main(){ cin >> N; for(int i=0; i> idx >> a >> b >> c; v.push_back({a*b*c, a+b+c, idx}); } sort(v.begin(), v.end()); for(int i=0; i 2023. 10. 11.
[cpp 알고리즘] 백준 25943 양팔저울 [백준] 25943 양팔저울 cpp 풀이 2022 ICPC KOREA 인터넷 예선(Internet Competition) A번 구현, 그리디 알고리즘 https://www.acmicpc.net/problem/25943 문제 요약 - n개의 자갈이 순서대로 주어지고, 아래 두 가지 규칙을 고려하여 양팔저울에 올리면 된다. (1) 평형인 경우, 자갈을 양팔저울의 왼쪽에 올려둔다. (2) 평형이 아닌 경우, 양팔저울의 가벼운 쪽에 저울을 올려둔다. - 최종적으로 양팔 저울의 평형을 맞추면 된다. 이 때는 1g, 2g, 5g, 10g, 20g, 50g, 100g의 7종류의 무게추를 사용하는데, 이 때 무게추의 최소 개수를 구하면 된다. 풀이 정리 1. 자갈 N개의 개수만큼 반복문을 돌면서, 좌/우 중에 어디 두.. 2023. 9. 27.
[C++ 알고리즘] 백준 14444 가장 긴 팰린드롬 부분 문자열 [백준] 14444 가장 긴 팰린드롬 부분 문자열 cpp 풀이 문자열, 매내처 알고리즘 https://www.acmicpc.net/problem/14444 14444번: 가장 긴 팰린드롬 부분 문자열 알파벳 소문자로만 이루어진 문자열 S가 주어졌을 때, S의 부분 문자열 중에서 팰린드롬 이면서 길이가 가장 긴 것의 길이를 구하는 프로그램을 작성하시오. www.acmicpc.net 문제 요약 - 문자열 S가 주어졌을 때, S의 부분 문자열 중에서 팰린드롬 이면서 길이가 가장 긴 것의 길이를 출력하면 된다. - 문제는 짧지만, 문자열 S를 글자 하나씩, 글자 두개씩, 글자 세개씩 잘라서 각각이 팰린드롬인지 확인해야 한다고 생각했다. 풀이 정리 1. 역시나, 그냥 다 해보는 것이다. 문자열의 길이가 n이라고 .. 2023. 5. 23.
반응형