덱 [C++] 3190 : 뱀 해냈다 평생의 숙원!! (x, y)는 우리가 수학적으로 생각하는 좌표와는 반대다. 열이 x, 행이 y이다. 앞으로 변수를 y, x 바꾸어 선언하여 혼동을 줄이는 것이 좋겠다. 뱀의 위치를 따로 저장하는 배열을 만들기보다는 다른 정수로 표시하여 한 번에 처리하였다. 뱀의 마지막 위치를 구하기 위하여 덱을 사용하였다. 모든 뱀의 좌표를 덱에 넣고 push와 pop을 하면서 뱀의 크기를 늘리고 줄... 2022.03알고리즘덱삼성cpp백준시뮬레이션2022.03 [C++] 백준 20055 : 컨베이어 벨트 위의 로봇 쉬웠던 시뮬레이션 문제. 그런데 은근 한 조건을 빼먹어서 꽤 애를 먹었다ㅜㅜ 꼼꼼히 문제를 보기, 로봇을 올리는 것도 내구도가 단다. 배열과 덱을 처음에는 혼용해서 사용하였는데 매우 비효율적이다. 배열로 컨베이너 벨트를, 덱을 로봇의 위치를 사용했는데 그냥 이런 컨베이터 벨트 문제는 다 덱을 사용하는게 덜 헷갈리고 편한 것 같다. 너무 많은 자료구조를 한 문제에 쓰지 말자. 덱도 배열처럼 i... 2022.04알고리즘덱삼성cpp백준시뮬레이션2022.04 [C++] 프로그래머스 : 기능개발 큐를 탐색해서 특정 조건에 pop을 시키려면 while문을 사용해서 아닌 경우 break를 시켜주는 것이 낫다. 만약 for문을 사용한다면 계속되는 pop으로 인덱스가 달라져 탐색할 수 없을 것이다.... 2022.04프로그래머스알고리즘덱cpp2022.04 10866_덱 덱실버class2백준class2 [200] 10866번 덱 문제 정수를 저장하는 덱(Deque)를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여덟 가지이다. push_front X: 정수 X를 덱의 앞에 넣는다. push_back X: 정수 X를 덱의 뒤에 넣는다. pop_front: 덱의 가장 앞에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다. pop_bac... 백준10866JavaScriptboj덱자바스크립트10866 [BOJ] 5430 AC.java 처음에 뒤집는 부분은 R로 표시하려고 생각했는데 Arrays.remove()까지 다른방법으로 시간을 줄일 수 있다는 것이 나중에 생각났다. 100%에서 시간초과가 나서 찾아보니 Arrays.remove()는 O(n)의 시간복잡도를 가진다고 해서 D함수 부분과 함수 출력부분을 start와 end 변수를 만들어서 관리해주었다.... 백준bojAC덱Java54305430 BOJ11003 최솟값 찾기 만약 배열이 [1, 5, 9, 9, 9]인 경우, 5를 담지 않는다면 윈도우가 1을 지나버리면 윈도우에는 5가 남아있지 않기 때문에 최솟값이 5임을 알 수 없다. 미래를 생각해보면, 2가 언젠가는 서브 배열의 최솟값이 된다. 그러면 그냥 윈도우에 지나가며 모든 값을 담고, 윈도우가 벗어난 값은 버리면 되는가? 바로 새로 들어온 값보다 큰 값이 있다면 그 값을 버리면 된다. 먼저, 현재 스텝에... 덱자료 구조우선순위 큐덱 1021 : 회전하는 큐 2번째와 3번째 연산 중 어떤 연산을 최소 횟수로 할 수 있는지 확인하기 위해서는 어떤 원소와 목표 원소 간 좌, 우측 거리를 비교해야 한다. 덱을 쓰는 대신, 가장 좌측에 있는 수를 MLN \text{MLN} MLN \text{MLN}_{n} MLNn 과 목표 원소 P_{n} 이때 MLN \text{MLN}_{n} > P_{n} MLNn >Pn MLN MLN L = \text{MLN}_{n... 덱생각분석 필요덱 [C++] 스택, 큐, 덱 스택 한 쪽 끝에서만 원소를 넣고 빼는 구조 LIFO(Last In First Out): 나중에 들어온 것이 먼저 나감 헤더: #include<stack> 선언: stack<데이터타입>이름 기본 함수 stack을 선언했을 때 함수 사용법 s.push(a): stack에 a 추가 s.pop(): 제일 마지막에 추가된 원소 제거 s.top(): 제일 마지막에 추가된 원소 반환 s.empty():... 알고리즘스택C덱큐C [백준 1021] 회전하는 큐 with node.js 📌 문제 📌 풀이 이 문제는 덱 문제이다. 아래만 기억해 두면 쉽게 풀 수 있다. 첫 번째 원소를 뽑아낸다.(arr.shift()) 왼쪽으로 한 칸 이동시킨다.(arr.push(arr.shift())) 오른쪽으로 한 칸 이동 (arr.unshift(arr.pop())) Array.from으로 1부터 N까지의 정수로 초기화시킨다. 뽑아내려고 하는 원소의 위치를 돌면서 deque.indexOf(... 덱코딩테스트자료구조백준덱 [백준] 13549번* 💻 C++ 기반 ✔️ 그냥 BFS는 간선마다 가중치가 다 같은 상태에서 최소 횟수를 구하는 것일뿐 ✔️ 이 문제는 최소 횟수는 아니더라도 가중치가 최소일 수 있다는 것을 인지!... BFS백준코테덱Deque너비우선탐색코딩테스트BFS
[C++] 3190 : 뱀 해냈다 평생의 숙원!! (x, y)는 우리가 수학적으로 생각하는 좌표와는 반대다. 열이 x, 행이 y이다. 앞으로 변수를 y, x 바꾸어 선언하여 혼동을 줄이는 것이 좋겠다. 뱀의 위치를 따로 저장하는 배열을 만들기보다는 다른 정수로 표시하여 한 번에 처리하였다. 뱀의 마지막 위치를 구하기 위하여 덱을 사용하였다. 모든 뱀의 좌표를 덱에 넣고 push와 pop을 하면서 뱀의 크기를 늘리고 줄... 2022.03알고리즘덱삼성cpp백준시뮬레이션2022.03 [C++] 백준 20055 : 컨베이어 벨트 위의 로봇 쉬웠던 시뮬레이션 문제. 그런데 은근 한 조건을 빼먹어서 꽤 애를 먹었다ㅜㅜ 꼼꼼히 문제를 보기, 로봇을 올리는 것도 내구도가 단다. 배열과 덱을 처음에는 혼용해서 사용하였는데 매우 비효율적이다. 배열로 컨베이너 벨트를, 덱을 로봇의 위치를 사용했는데 그냥 이런 컨베이터 벨트 문제는 다 덱을 사용하는게 덜 헷갈리고 편한 것 같다. 너무 많은 자료구조를 한 문제에 쓰지 말자. 덱도 배열처럼 i... 2022.04알고리즘덱삼성cpp백준시뮬레이션2022.04 [C++] 프로그래머스 : 기능개발 큐를 탐색해서 특정 조건에 pop을 시키려면 while문을 사용해서 아닌 경우 break를 시켜주는 것이 낫다. 만약 for문을 사용한다면 계속되는 pop으로 인덱스가 달라져 탐색할 수 없을 것이다.... 2022.04프로그래머스알고리즘덱cpp2022.04 10866_덱 덱실버class2백준class2 [200] 10866번 덱 문제 정수를 저장하는 덱(Deque)를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여덟 가지이다. push_front X: 정수 X를 덱의 앞에 넣는다. push_back X: 정수 X를 덱의 뒤에 넣는다. pop_front: 덱의 가장 앞에 있는 수를 빼고, 그 수를 출력한다. 만약, 덱에 들어있는 정수가 없는 경우에는 -1을 출력한다. pop_bac... 백준10866JavaScriptboj덱자바스크립트10866 [BOJ] 5430 AC.java 처음에 뒤집는 부분은 R로 표시하려고 생각했는데 Arrays.remove()까지 다른방법으로 시간을 줄일 수 있다는 것이 나중에 생각났다. 100%에서 시간초과가 나서 찾아보니 Arrays.remove()는 O(n)의 시간복잡도를 가진다고 해서 D함수 부분과 함수 출력부분을 start와 end 변수를 만들어서 관리해주었다.... 백준bojAC덱Java54305430 BOJ11003 최솟값 찾기 만약 배열이 [1, 5, 9, 9, 9]인 경우, 5를 담지 않는다면 윈도우가 1을 지나버리면 윈도우에는 5가 남아있지 않기 때문에 최솟값이 5임을 알 수 없다. 미래를 생각해보면, 2가 언젠가는 서브 배열의 최솟값이 된다. 그러면 그냥 윈도우에 지나가며 모든 값을 담고, 윈도우가 벗어난 값은 버리면 되는가? 바로 새로 들어온 값보다 큰 값이 있다면 그 값을 버리면 된다. 먼저, 현재 스텝에... 덱자료 구조우선순위 큐덱 1021 : 회전하는 큐 2번째와 3번째 연산 중 어떤 연산을 최소 횟수로 할 수 있는지 확인하기 위해서는 어떤 원소와 목표 원소 간 좌, 우측 거리를 비교해야 한다. 덱을 쓰는 대신, 가장 좌측에 있는 수를 MLN \text{MLN} MLN \text{MLN}_{n} MLNn 과 목표 원소 P_{n} 이때 MLN \text{MLN}_{n} > P_{n} MLNn >Pn MLN MLN L = \text{MLN}_{n... 덱생각분석 필요덱 [C++] 스택, 큐, 덱 스택 한 쪽 끝에서만 원소를 넣고 빼는 구조 LIFO(Last In First Out): 나중에 들어온 것이 먼저 나감 헤더: #include<stack> 선언: stack<데이터타입>이름 기본 함수 stack을 선언했을 때 함수 사용법 s.push(a): stack에 a 추가 s.pop(): 제일 마지막에 추가된 원소 제거 s.top(): 제일 마지막에 추가된 원소 반환 s.empty():... 알고리즘스택C덱큐C [백준 1021] 회전하는 큐 with node.js 📌 문제 📌 풀이 이 문제는 덱 문제이다. 아래만 기억해 두면 쉽게 풀 수 있다. 첫 번째 원소를 뽑아낸다.(arr.shift()) 왼쪽으로 한 칸 이동시킨다.(arr.push(arr.shift())) 오른쪽으로 한 칸 이동 (arr.unshift(arr.pop())) Array.from으로 1부터 N까지의 정수로 초기화시킨다. 뽑아내려고 하는 원소의 위치를 돌면서 deque.indexOf(... 덱코딩테스트자료구조백준덱 [백준] 13549번* 💻 C++ 기반 ✔️ 그냥 BFS는 간선마다 가중치가 다 같은 상태에서 최소 횟수를 구하는 것일뿐 ✔️ 이 문제는 최소 횟수는 아니더라도 가중치가 최소일 수 있다는 것을 인지!... BFS백준코테덱Deque너비우선탐색코딩테스트BFS