일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- SWTest
- 삼성
- Network Flow
- maximum flow
- 백준
- INNER JOIN
- 최대유량
- BOJ
- 메모이제이션
- SQL
- 빅스비
- 최대 유량
- 빅스비 스튜디오
- 프로그래머스
- Baekjoon
- 후기
- bixby studio
- SWEA
- ICPC
- 완전탐색
- backjoon
- SDS 알고특강
- 네트워크 플로우
- 이분탐색
- JOIN
- DP
- 분할정복
- 코딩테스트
- 세그먼트트리
- 알고리즘
- Today
- Total
목록큐 (2)
답은 알고리즘 뿐이야!
문제 출처 : https://www.acmicpc.net/problem/5430 풀이 : 큐 문제입니다. 이 문제는 배열을 자주 뒤집어야 하는데 말 그대로 뒤집기만 하면 타임오버가 납니다. front 와 rear의 위치만 바꿔 주어 O(1)로 뒤집은 듯한 효과를 내시면 됩니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 #include struct reverse_queue { int data[100001]; int front, r..
문제 출저 : https://www.acmicpc.net/problem/3078 풀이 : 단순히 큐 전체를 탐색하면 O(N^2)이되므로 타임에러가 나게 됩니다 필자도 쉽게 풀려다가 타임에러 났습니다 ㅠㅠ 그래서 그때 그때 들어오는 길이만 data배열에 저장하기로 했습니다. (편의상 삽입은 push, 삭제는 pop으로 정함) 하지만 등수가 K+1등수 이상 차이나면 큐에서 팝해줘야 함으로 언제 얼마만큼의 길이가 push 됬는지는 알아야 합니다. 따라서 길이를 저장할 큐도 따로 만들어 줍니다. 모든 문자열은 항상 최대 K등수 만큼 차이나는 이전에 들어오는 문자열과 비교되고, 정확히 K등수만큼 차이나는 후에 들어온 문자열과 비교 되기 때문에 이와 같이 길이만 가지고 n번 진행하게 된다면 특정 문자열은 앞으로 K..