728x90
반응형
[백준 28323번] 불안정한 수열 (C++) (한국정보올림피아드 KOI 2323 2차대회)
PS/백준 알고리즘[BOJ]2023. 11. 2. 09:36[백준 28323번] 불안정한 수열 (C++) (한국정보올림피아드 KOI 2323 2차대회)

1. 문제 https://www.acmicpc.net/problem/28323 28323번: 불안정한 수열 $N$개의 자연수가 좌우 일렬로 놓여 있다. 왼쪽에서 $i$ ($1 \le i \le N$)번째에 놓여 있는 자연수는 $A_i$다. 여러분은 이 중 몇 개의 자연수를 원하는 만큼 고를 수 있다. 단, 아무 자연수도 고르지 않 www.acmicpc.net 2023년 정보올림피아드 초등부 1번 문제이다. 2. 풀이 문제에서 정의한 불안정안 수열이란 이웃한 두 숫자의 합이 모두 홀수인 수열을 말한다. 자연수의 배열이 주어졌을 때 최대 몇개의 숫자로 불안정한 수열을 만들 수 있는지 구하는 문제이다. 불안정한(이웃한 두 수의 합이 모두 홀수인) 수열을 만들려면 수열을 탐색하며 이웃한 두 수의 합이 짝수가 되..

[백준 6603번] 로또 (C++)
PS/백준 알고리즘[BOJ]2023. 11. 1. 16:37[백준 6603번] 로또 (C++)

1. 문제 https://www.acmicpc.net/problem/6603 6603번: 로또 입력은 여러 개의 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있다. 첫 번째 수는 k (6 num[i]; lottery(0, 0); cout

자료구조 | 알고리즘/선형 자료구죠2023. 10. 31. 12:52[자료구조] stack을 활용한 괄호쌍 짝짓기

1. 괄호쌍의 유효성 괄호쌍의 유효성이란 열린괄호' ( '와 닫힌 괄호' ) '가 서로 순서와 짝이 맞게 이루어져있는지 판단해주는 방법이다. 일반적으로 괄호쌍을 다룰 때에 소괄호' ( '가 주로 판단대상이지만 중괄호' { '나 대괄호' [ '로 확장하여 판단하기도 한다. 괄호쌍이 유효한 경우 ( ) ( ( ) ) ( [ ] ) 괄호쌍이 유효하지 않은 경우 ) ( { ( } ) { } ) 2. stack을 이용한 괄호쌍 유효성 검사하기 알고리즘 그러면 어떻게 이를 판단할 수 있을까? 위에서 괄호쌍이 유요하지 않은 경우는 괄호의 짝이나 순서 또는 개수가 맞지 않는다는 것을 확인할 수 있다. 데이터가 입력되었을 때 현재까지 입력된 상태를 유지하고 제일 마지막에 입력된 값과 비교해야 함을 느낄 수 있다. 따라서..

자료구조 | 알고리즘/탐색(Brute Force)2023. 10. 31. 12:44브루트 포스(완전 탐색) 알고리즘

BFS와 DFS의 관계 인접행렬 형태의 BFS 문제 입니다. 이 문제는 DFS로는 해결되지 않습니다. 꼭 BFS로 해결해야 합니다. 모든 DFS 문제는 BFS로 해결할 수 있습니다. 하지만 BFS문제는 DFS로 해결하지 못하는 경우도 있습니다. 바로 이 문제처럼 최소의 칸 수를 출력해야 하는 문제가 그렇습니다.

자료구조 | 알고리즘/비선형 자료구조2023. 10. 31. 12:43[자료구조] 이진 탐색 트리

이진 탐색 트리란? 이진 트리의 한 종류로 왼쪽 자식 노드에는 부모 노드보다 작은 값, 오른쪽 자식 노드에는 부모 노드보다 큰 값을 저장하여 만든 트리 https://lgphone.tistory.com/90 13-2. 이진 탐색 트리와 자가 균형 이진 탐색 트리 (Binary Search Tree and Self-balancing Binary Tree): 파이썬 이진 탐색 트리 이진 탐색 트리 (binary search tree) 는 노드를 정렬된 순서로 유지하는 자료구조이다. 이진 트리로 이루어지며, 각 노드에는 값과 두 자식 노드에 대한 포인터가 있다. 또한 선택적으 lgphone.tistory.com https://ejklike.github.io/2018/01/09/traversing-a-binar..

자료구조 | 알고리즘/동적 계획법2023. 10. 31. 09:37[알고리즘] 동적 계획법을 이용하여 구간합 구하기(Prefix Sum)

1. 구간합이란? 어떤 배열이 주어졌을 때 원하는 구간의 합을 말한다. 2. 구간합 알고리즘 구간합 개념 고등학교때 배운 수열의 합을 이용하여 원하는 구간의 합을 구하는 법을 배웠다. 자연수 n에 대하여 수열 A(n)의 1 ~ n까지의 합을 S(n)이라고 할 때 두 자연수 a ~ b까지의 합은 S(b) - S(a-1)이다. [증명] a > a >> b; for (int i = 1; i > A[i]; //S(b), S(a) 구하기 for(int i=1; i Ai; S[i] = S[i-1] + Ai; } cin >> a >> b; cout

728x90
반응형
image