본문 바로가기

queue3

BOJ_1238_파티 문제 이름 : 파티 (1238번) 문제 유형 : 그래프 이론, 다익스트라 작성 언어 : C++ 문제 N개의 숫자로 구분된 각각의 마을에 한 명의 학생이 살고 있다. 어느 날 이 N명의 학생이 X (1 ≤ X ≤ N)번 마을에 모여서 파티를 벌이기로 했다. 이 마을 사이에는 총 M개의 단방향 도로들이 있고 i번째 길을 지나는데 Ti(1 ≤ Ti ≤ 100)의 시간을 소비한다. 각각의 학생들은 파티에 참석하기 위해 걸어가서 다시 그들의 마을로 돌아와야 한다. 하지만 이 학생들은 워낙 게을러서 최단 시간에 오고 가기를 원한다. 이 도로들은 단방향이기 때문에 아마 그들이 오고 가는 길이 다를지도 모른다. N명의 학생들 중 오고 가는데 가장 많은 시간을 소비하는 학생은 누구일지 구하여라. 입력 첫째 줄에 N(1 .. 2021. 7. 25.
BOJ_13335_트럭 문제 이름 : 트럭 (13335번) 문제 유형 : 구현 , 시뮬레이션 작성 언어 : C++ 문제 강을 가로지르는 하나의 차선으로 된 다리가 하나 있다. 이 다리를 n 개의 트럭이 건너가려고 한다. 트럭의 순서는 바꿀 수 없으며, 트럭의 무게는 서로 같지 않을 수 있다. 다리 위에는 단지 w 대의 트럭만 동시에 올라갈 수 있다. 다리의 길이는 w 단위길이(unit distance)이며, 각 트럭들은 하나의 단위시간(unit time)에 하나의 단위길이만큼만 이동할 수 있다고 가정한다. 동시에 다리 위에 올라가 있는 트럭들의 무게의 합은 다리의 최대하중인 L보다 작거나 같아야 한다. 참고로, 다리 위에 완전히 올라가지 못한 트럭의 무게는 다리 위의 트럭들의 무게의 합을 계산할 때 포함하지 않는다고 가정한다... 2021. 7. 22.
C++ queue C++ 표준 라이브러리 Standard Template Library 헤더파일 #include 를 쓰면 사용가능하다 queue는 줄을 서서 기다린다는 사전적의미 그대로 이해하면된다. FIFO 구조 (First In First Out) 먼저 들어온것이 먼저 나간다(선입선출) 그래프의 넓이우선 탐색 BFS(Breadth First Search) 알고리즘 에서 사용한다. 예를들면 이렇게된다. Queue 선언 #include queue q;//int형 큐 선언 queue q;//string형 큐 선언 Queue 값 추가 및 삭제 queue q;//int형 큐 선언 q.push(1);//큐에 값 1 추가 q.push(3);//큐에 값 3 추가 q.push(5);//큐에 값 5 추가 // q.pop();//큐의 맨.. 2021. 7. 14.