본문 바로가기

백준 문제풀이124

[백준][스택] 9935 문자열 폭발 c++구현 목차 https://www.acmicpc.net/problem/9935 9935번: 문자열 폭발 첫째 줄에 문자열이 주어진다. 문자열의 길이는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 둘째 줄에 폭발 문자열이 주어진다. 길이는 1보다 크거나 같고, 36보다 작거나 같다. 두 문자열은 모 www.acmicpc.net 문제 문제 구현 시 주의점 문자 길이가 매우 길기 때문에 시간복잡고다 O(N^2) 나오게 되면 시간초과가 되므로 주의해야 한다. 하지만 비교 문자열의 크기는 36으로 매우 작으므로 스택을 통해 검사하면서 넣어 주게 되면 O(N)시간 복잡도를 가질 수 있다. 문제 풀이 비교 문자열이 12ab라면 b인 끝 문자열과 같지 않다면 그냥 스택에 넣어준다. 끝 문자열과 같다면 기존 스택에.. 2024. 4. 1.
[백준][분할 정복] 1629 곱셈 c++구현 목차 https://www.acmicpc.net/problem/1629 1629번: 곱셈 첫째 줄에 A, B, C가 빈 칸을 사이에 두고 순서대로 주어진다. A, B, C는 모두 2,147,483,647 이하의 자연수이다. www.acmicpc.net 문제 문제 풀이 시 신경써야 할 점 시간 복잡도 -> 범위가 굉장히 넓기 때문에 for문을 쓸 경우 시간초과가 난다. 따라서 분할 정복을 통해 시간 복잡도는 O(logN)을 만들어 주어야 한다. int형 범위 -> int형 보다 훨씬 크기 때문에 long long int를 써주어야 한다 (a+b) % c = a%c + b%c (axb) % c = a%c x b%c 수학적 원리를 잘 이용해 초과를 막아야한다. 코드 구현 #include #include #in.. 2024. 3. 30.
[백준][스택] 3986 좋은 단어 c++구현 목차 https://www.acmicpc.net/problem/3986 3986번: 좋은 단어 이번 계절학기에 심리학 개론을 수강 중인 평석이는 오늘 자정까지 보고서를 제출해야 한다. 보고서 작성이 너무 지루했던 평석이는 노트북에 엎드려서 꾸벅꾸벅 졸다가 제출 마감 1시간 전에 www.acmicpc.net 문제 문제 풀이 스택이 비어있다 -> 문자를 넣어준다. 스택이 비어있지 않다 -> 1.스택의 top값과 들어갈 값이 같으면 스택에서 pop해준다. 2.스택의 top값과 들어갈 값이 다르면 그냥 넣어준다. 문자열을 다 순회한후 스택이 비어있다면 1, 비어있지 않다면 0을 리턴해 준다. 코드 구현 #include #include #include using namespace std; int check(str.. 2024. 3. 30.
[백준][조합] 1940 주몽 c++구현 목차 https://www.acmicpc.net/problem/1940 1940번: 주몽 첫째 줄에는 재료의 개수 N(1 ≤ N ≤ 15,000)이 주어진다. 그리고 두 번째 줄에는 갑옷을 만드는데 필요한 수 M(1 ≤ M ≤ 10,000,000) 주어진다. 그리고 마지막으로 셋째 줄에는 N개의 재료들이 가진 고 www.acmicpc.net 문제 문제 구현 방법 이중 for문을 통해 구현을 하거나 재귀함수를 통해 구현해서 풀면 되는 문제이다. 참고 https://be-senior-developer.tistory.com/49 순열과 조합 c++ 구현 목차 c++로 순열과 조합을 어떻게 구현하는지에 대해 알아보자 stl로 구현한 순열 #include #include #include using namespac.. 2024. 3. 30.
728x90