본문 바로가기

분류 전체보기

(88)
[LeetCode] 2038. Remove Colored Pieces if Both Neighbors are the Same Color (C++) Remove Colored Pieces if Both Neighbors are the Same Color - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 파이썬만 하다가 c++을 하려고 하다 보니 확실히 증감연산자(++,--)를 활용이 잘 안 되는 것 같습니다. 풀이 문제는 2개 이상의 연속된 A와 2개 이상의 연속된 B의 개수를 비교하면 쉽게 해결할 수 있었습니다. Alice와 Bob 모두 colors 배열 순서에 영향을 주지 못합니다. A는 A로 둘러쌓인,..
[LeetCode] 2130. Maximum Twin Sum of a Linked List (C++) Maximum Twin Sum of a Linked List - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제는 head만 주어진 상태에서 어떻게 linked list의 길이를 알 수 있냐인 것 같습니다. List의 길이를 알지 못하면 어떤 노드들이 twin이 되는지 알지 못하니까요. 풀이 Slow: node를 1개씩 이동 Fast: node를 2개씩 이동 위와 같이 변수를 두개사용하면 Fast가 끝에 도착했을 때까지 Slow를 이동시키면 Slow는 lin..
[LeetCode] 405. Convert a Number to Hexadecimal (C++) Convert a Number to Hexadecimal - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 풀이 답을 구하는 과정은 간단하죠. 16으로 나누어 나머지를 string에 계속 이어 붙이면 됩니다. 하지만 저 같은 C++ 초보는 배울 점이 많았다고 생각이 듭니다ㅎㅎ [String에 char insert하는 법] string에 char를 insert하기 위해서는 char의 데이터 크기를 정해주어야 합니다. string& insert (size_t pos..
[논문리뷰] Voxblox: Incremental 3D Euclidean Signed Distance Fields for On-Board MAV Planning Voxblox: Incremental 3D Euclidean Signed Distance Fields for On-Board MAV Planning Micro Aerial Vehicles (MAVs) that operate in unstructured, unexplored environments require fast and flexible local planning, which can replan when new parts of the map are explored. Trajectory optimization methods fulfill these needs, but require obstacle arxiv.org 이해가 완벽하지 않아 부족한 점이 많습니다. 지적해주시면 감사하겠습니다 :) ESDFs:..
[C++] Sort 사용법 & Compare 함수 python만 쓰다가 c++으로 정렬하려니 머리가 아파와서 기록이라도 하고자합니다 하하.. [C++] Sort 먼저 C++의 sort는 O(nlogn) 의 복잡도를 가지는 Intro Sort를 사용하였다고 합니다. Sort를 사용하려면 #include 를 추가하시고, 인자는 아래와 같이 사용하시면 됩니다.. #include void sort (RandomAccessIterator first, RandomAccessIterator last); void sort (RandomAccessIterator first, RandomAccessIterator last, Compare comp); first와 last는 sort할 범위를 나태는 인자입니다. 만약 int[] arr = {5,1,2,4,3}를 정렬하고자 ..
[C++] Ubuntu VSCode OpenCV 설치 Ubuntu환경에서 VSCode에 C++ OpenCV를 설치에 대한 글을 적어보려합니다. 1. Install make : c++를 사용할예정이니 cmake과 make는 설치해주세요. sudo apt install -y cmake sudo apt install -y make 2. Clone OpenCV https://github.com/opencv/opencv/tree/4.x 에서 원하는 버전을 clone해주시면 됩니다. clone은 home에 하시는 걸 추천드립니다. cd git clone https://github.com/opencv/opencv.git 3. opencv 디렉토리로 이동해서 build 디렉토리를 생성해줍니다. cd opencv && mkdir build 4. Install cmake g..
[프로그래머스] 코딩테스트 연습 - 거스름돈 (Python) 코딩테스트 연습 - 거스름돈 [2022 KAKAO BLIND RECRUITMENT] 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 쉽지 않은 문제였다고 생각됩니다. 제가 처음 접근했던 방법은 DFS였지만 효율성의 벽을 넘을 수는 없어서 다른 분들의 풀이를 참고하였습니다. 풀이 해당 문제를 풀이하면서 가장 중요한 키워드는 DP 입니다. 저처럼 DFS/BFS를 시도하신 분들이라면 선택된 동전의 순서로 인해 머리 아프시진 않으셨나요? (저는 그랬거든요ㅠ) 예를 들면 4원을 만들기 위해 (1,1,2) & (1,2,1) & (2,1,1) 은 모두 같은 동전의 개수..
[프로그래머스] 코딩테스트 연습 - 사라지는 발판 (Python) 코딩테스트 연습 - 사라지는 발판 [2022 KAKAO BLIND RECRUITMENT] 코딩테스트 연습 - 사라지는 발판 [[1, 1, 1], [1, 1, 1], [1, 1, 1]] [1, 0] [1, 2] 5 [[1, 1, 1], [1, 0, 1], [1, 1, 1]] [1, 0] [1, 2] 4 programmers.co.kr 해당 문제 해설은 카카오 사이트에 올라와 있으니 참고하시면 좋을 것 같습니다. 풀이 해당 문제를 풀이하면서 가장 중요한 키워드는 DFS와 완전 탐색입니다. 완전 탐색이 가능한 이유는 board의 길이가 최대 5x5이기에 완전 탐색을 하기에 그리 부담스러운 크기는 아니기 때문입니다. 후에 A와 B의 모든 이동 가능한 경우를 탐색하면 됩니다. 한 가지 신경 써야 할 부분이 있다면..