본문 바로가기
반응형

[백준]214

[BaekJoon/백준] 2164번 큐 활용 문제에서 '나 큐야' 라고 알려준다! 일반 선형배열 큐보다 성능이 좋은 링 버퍼 기반의 큐를 통해 문제를 풀었다. 문제에서 주어진대로 Enque와 Deque 작업을 해주면 된다! #include #include #include // 링 버퍼 구조로 큐를 구현 typedef struct { int max; // 큐의 용량 int num; // 현재 데이터 수. front와 rear의 값이 같은 경우 큐가 비어있는지, 가득찼는지 구별할 수 없는 상황을 피하기 위해 사용. int front; // 프런트. 첫 번째 요소의 인덱스를 저장 int rear; // 리어. 맨 나중에 넣은 요소의 하나 뒤의 인덱스를 저장 (다음 인큐 시에 데이터가 저장될 요소의 인덱스를 미리 준비하는 것) int *que; // 큐의.. 2021. 3. 9.
[BaekJoon/백준] 18258 큐 구현 (링 버퍼 기반) 배열을 이용해서 기본적인 큐를 구현하게 되면 요소 이동을 수행하기 때문에 복잡도가 O(n)이 될 수 있다. 따라서, 처리의 복잡도를 모두 O(1)로 만들어주기 위해 링 버퍼 기반의 큐로 구현해야 좋다. 링 버퍼 기반의 큐란, 배열의 처음이 끝과 연결되어있다고 보고 설계하는 자료구조다. #include #include #include // 링 버퍼 구조로 큐를 구현 typedef struct { int max; // 큐의 용량 int num; // 현재 데이터 수. front와 rear의 값이 같은 경우 큐가 비어있는지, 가득찼는지 구별할 수 없는 상황을 피하기 위해 사용. int front; // 프런트. 첫 번째 요소의 인덱스를 저장 int rear; // 리어. 맨 나중에 넣은 요소의 하나 뒤의 인덱.. 2021. 3. 7.
[BaekJoon/백준] 17298 스택 활용 어려운 문제. 오큰수 문제. 배열로 받아서 기본적인 발상대로 앞에서부터 뒤로 구해보면 O(N^2) -> 1000000일 경우 시간초과. 따라서 이 방법은 안되고, O(N)의 방법을 찾아야 했다. 설명은 여기 블로그가 좋았다 suhwanc.tistory.com/58 백준 17298번 오큰수 문제 링크 : https://www.acmicpc.net/problem/17298 17298번: 오큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다.. suhwanc.tistory.com 중요한 점은 스택을 이용한다는 것과, 값 자체가 아닌 인덱스를 스택에 넣어줘서 관리한다는 것. 처음에.. 2021. 3. 7.
[BaekJoon/백준] 1874번 스택 활용 문제 이해가 안되어서 다른 분의 글을 보고 문제를 이해했다. organize-study.tistory.com/60 C언어로 문제 풀 때마다 느끼는건데, 문자열 활용에 대해서 다른 언어들보다 너무 기능이 후달린다.. C언어로 문제 풀 때 문자열 다루는 문제가 나올 때 마다 짜증난다.. 하.. 자바랑 씨쁠쁠 방법이 훨씬 쉽다. 이 문제.. 결과 다 구해놓고 문자열 출력에서 막혔다. C언어는 문자열을 위한 배열 크기가 정적이라 정말..짜증 정해진 크기도 없고.. 임의로 정해주었다. #include #include int cur = 0; // 현재 값 상태 typedef struct { int *stk; int size; } IntStack; void push(IntStack *s, int a) { s->stk.. 2021. 3. 6.
반응형