본문 바로가기 메뉴 바로가기

SiO2whocodes

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

SiO2whocodes

검색하기 폼
  • 분류 전체보기 (205)
    • 알고리즘 문제풀이 (168)
    • iOS (12)
      • swift (1)
    • Spring (2)
    • Research Paper (4)
    • coding() (10)
      • Git (4)
    • 책 (2)
    • PHOKI (1)
    • Culture Cabinet (1)
    • 기타 (0)
  • 방명록

우선순위큐 (6)
[백준 11000] 알고리즘 110일차 : 강의실 배정

https://www.acmicpc.net/problem/11000 11000번: 강의실 배정 첫 번째 줄에 N이 주어진다. (1 ≤ N ≤ 200,000) 이후 N개의 줄에 Si, Ti가 주어진다. (1 ≤ Si < Ti ≤ 109) www.acmicpc.net C++ 그리디 알고리즘, 우선순위 큐 강의 시간표 (시작시간, 종료시간)이 주어지고 최소한의 강의실을 배정하여 강의실 개수를 출력하는 문제 접근방법 그리디 문제 중에 이런 문제는 처음 봐서 좀 헤맸다. 처음엔 브루트포스인가 싶어서 이중포문으로 돌렸었는데 역시 시간복잡도 때문에 아니었던 것 같다. 우선순위큐 두개를 사용해서 풀이한다. 하나는 모든 강의 시간표가 시작시간의 오름차순으로 정렬되어있다(시작시간이 같을 경우 종료시간 오름차순) : pq ..

알고리즘 문제풀이 2021. 7. 27. 11:22
[백준 1655] 알고리즘 104일차 : 가운데를 말해요

https://www.acmicpc.net/problem/1655 1655번: 가운데를 말해요 첫째 줄에는 수빈이가 외치는 정수의 개수 N이 주어진다. N은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수이다. 그 다음 N줄에 걸쳐서 수빈이가 외치는 정수가 차례대로 주어진다. 정수는 -1 www.acmicpc.net 우선순위 큐 C++ 하나의 수를 입력할때 마다 저장된 수들 중 중간값을 출력하는 문제 접근방법 최대힙과 최소힙을 모두 사용한다는 아이디어를 얻었다. 정렬된 수열을 반 잘라 앞부분은 최대힙에, 뒷부분은 최소힙에 저장해서 최소힙의 루트노드와 최대힙의 루트노드만 참조하여 중간값을 구하는 것이다. 물론 진짜로 반으로 나눠서 넣으면 안되고 입력받을 때마다 둘 중 한 곳에 push해야한다. ..

알고리즘 문제풀이 2021. 7. 12. 16:12
[백준 11286] 알고리즘 97일차 : 절댓값 힙

https://www.acmicpc.net/problem/11286 11286번: 절댓값 힙 첫째 줄에 연산의 개수 N(1≤N≤100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 0이 아니라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 우선순위 큐 이번엔 비교로직을 구현해야하는 문제 operator 오버로딩해서 절댓값으로 비교하게 하면 된다. 소스코드 #include #include #include #include using namespace std; struct cmp{ bool operator()(int a, int b){ if( abs(a) == abs(b) ) return a > b; else ret..

알고리즘 문제풀이 2021. 7. 1. 11:22
[백준 1927] 알고리즘 96일차 : 최소 힙

https://www.acmicpc.net/problem/1927 1927번: 최소 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 우선순위 큐 최소 힙이라 비교로직만 바꿔주면 된다. less 대신 greater로 이번엔 greater자리에 비교연산만 구현해서 넣어봤다. 오름차순이라 a b 였다.. 소스코드 #include #include #include using namespace std; struct cmp{ bool operator()(int a, int b){ r..

알고리즘 문제풀이 2021. 6. 30. 11:22
[백준 11279] 알고리즘 95일차 : 최대 힙

https://www.acmicpc.net/problem/11279 11279번: 최대 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 www.acmicpc.net 우선순위 큐 시간제한이 칼같길래..힙 구현해서 풀어야하는줄알고 오랜만에 힙을 다시 공부했는데 STL로 그냥 풀리는 문제였다..기왕한거 최대힙을 구현해서 풀어봤다. 오답노트 시간초과가 한번 났는데 cin tie 끊고 sync_with_stdio false로 하니 풀렸다. 소스코드 priority_queue STL version (AC) #include #include #inclu..

알고리즘 문제풀이 2021. 6. 29. 17:19
[백준 1753] 알고리즘 90일차 : 최단경로

www.acmicpc.net/problem/1753 1753번: 최단경로 첫째 줄에 정점의 개수 V와 간선의 개수 E가 주어진다. (1≤V≤20,000, 1≤E≤300,000) 모든 정점에는 1부터 V까지 번호가 매겨져 있다고 가정한다. 둘째 줄에는 시작 정점의 번호 K(1≤K≤V)가 주어진다. www.acmicpc.net C++ 다익스트라 문제가 간결한 것에 비해 걸린 시간이 매우 김. 역시 골드는 만만하게 봐선 안돼 우선순위큐를 사용해서 다익스트라로 풀이하는 문제입니다. 접근방법 인접행렬을 사용했고, 우선순위큐를 사용했습니다. 방문 여부는 큐에서 뽑은 거리가 이미 그 노드까지의 최단경로와 같다면 그 노드에 대해서는 처리하지 않고 넘어가는 식 오답노트 우선순위 큐 안써서 시간초과 났었음 근데 우선순위 ..

알고리즘 문제풀이 2021. 2. 23. 19:04
이전 1 다음
이전 다음
공지사항
최근에 올라온 글
  • [TSC-2021] A Missing QoS Pr⋯
  • [EdgeCom-2020] Green comput⋯
  • [FGCS-2018] An SVM-based co⋯
  • [IEEE TSC-2020] A Survey on⋯
최근에 달린 댓글
  • 감사해요 덕분에 통과했습니다 ㅜ ㅜ
  • 그러네요! 지금 다시 0 예외 처리 해주지 않고 제출했⋯
  • 궁금한게 있는데요.. 입력에 N은 1000000보다 작⋯
  • 프로그램을 실행파일로 올려놓은 것이 문제가 됐던 것 같⋯
Total
8,616
Today
17
Yesterday
34
링크
TAG
  • 스택
  • 백준
  • 다이나믹프로그래밍
  • 파이썬
  • 투포인터
  • 프로그래머스
  • 브루트포스
  • dp
  • Swift
  • 최대힙
  • 게임이론
  • 수학
  • c++
  • 정렬
  • 최소힙
  • 백트래킹
  • 가장 큰 수 프로그래머스
  • 이분탐색
  • 가장 큰 수 Swift
  • 그리디알고리즘
  • 토마토
  • 우선순위큐
  • dfs
  • 자바
  • 최단경로
  • 알고리즘
  • 동적계획법
  • 웹크롤링
  • BFS
  • 트리
more
«   2023/03   »
일 월 화 수 목 금 토
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
글 보관함
  • 2023/01 (4)
  • 2022/06 (1)
  • 2022/04 (9)
  • 2022/03 (22)

Blog is powered by Tistory / Designed by Tistory

티스토리툴바