#1. 문제 https://www.acmicpc.net/problem/2630 #2. 풀이 1. 분할-정복 알고리즘 [알고리즘]#4_분할-정복 알고리즘[알고리즘]#4_분할-정복 알고리즘 분할-정복 알고리즘에 대해 알아보겠습니다. Overview 개념 예제 #0. 개념 1. 분할 정복 알고리즘 분할 정복 알고리즘은 먼저 전체 문제를 원래 문제와 유사하지만webddevys.tistory.com분할-정복 알고리즘은 하나의 문제를 여러 하위 부분 문제들로 분할하여, 재귀적으로 이를 해결하고 그 결과 값들을 병합하여 최적해를 찾아내는 최적화 기법 중 하나입니다. 2. 4개로 분할, 그리고 재귀 호출먼저, 병합(탐색 종료) 조건을 설정합니다. 종료 조건은 색종이 크기가 1이 되거나, 현재 크기의 색종이 칸들이 ..
#1. 개념 1. Input ModeUnreal Engine에서 PlayerController는 입력 모드를 통해 게임 내에서 입력이 어떻게 처리될지를 결정합니다. 주요 Input Mode는 3가지로, FInputModeGameOnly, FInputModeUIOnly, 그리고 FInputModeGameAndUI가 있습니다. 2. FInputModeGameOnly입력을 게임 월드에 전달하고, 마우스 커서를 기본적으로 숨기지만 별도의 설정을 통해 나타내는 것 또한 가능합니다. 주로 게임 플레이 중에 사용됩니다. 다만, FInputModeGameOnly의 경우, 마우스 커서를 나타내는 것은 가능하지만 기본적으로 UI 요소로서의 자동 입력 라우팅을 비활성화합니다. 따라서, FInputModeGameOnly를 ..
#1. 문제 https://www.acmicpc.net/problem/11780 #2. 풀이 1. 플로이드-워셜(Floyd-Warshall) [알고리즘]#2_길 찾기 알고리즘#1. 개념 1. 길 찾기 알고리즘[정의] : 길 찾기 알고리즘은 그래프 자료구조에서 출발점에서 도착점 사이의 경로를 탐색하는 알고리즘입니다. 노드와 노드 간 연결 관계를 나타내는 간선으로 구webddevys.tistory.com플로이드-워셜은 최단 경로 알고리즘으로 그래프의 전체-쌍 최단 경로를 찾는 알고리즘입니다. 플로이드-워셜 알고리즘은 총 3개의 중첩 for문을 통해 구현되며, 최악의 시간 복잡도는 O(n³)입니다. 주로, 플로이드-워셜은 주어진 문제에서 '경유 정점' 개념이 강조될 때 활용합니다. 2. 플로이드-워셜 중 ..
#1. 문제 https://www.acmicpc.net/problem/15683 #2. 풀이 1. 백트래킹 [알고리즘]#6_백트래킹[알고리즘]#6_백 트래킹 백 트래킹 알고리즘에 대해 알아보겠습니다. Overview 개념예제 #0. 개념1. 백 트래킹백 트래킹 알고리즘은 문제 해결을 위해 여러 후보 해결책들을 점진적으로 탐색하webddevys.tistory.com백트래킹은 문제의 여러 후보 해결책들을 점진적으로 탐색하며, 현재 선택한 경로가 해결책으로 이어질 수 없다고 판단되면, 이전 단계로 돌아가 다른 후보 경로에 대한 탐색을 시도하는 방법입니다. 일반적으로, 재귀 DFS를 활용하여 구현됩니다. 2. DFS [자료구조]#6_그래프#0. 개념 1. 그래프?[정의] : 그래프는 노드와 간선들의 집합으..
#1. 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr #2. 풀이 1. deque [Basic C++] #68_deque[Basic C++] #68_deque C++의 STL에서 제공하는 deque 컨테이너에 대해 알아보겠습니다. Overview 개념선언멤버 함수예제 #0. 개념1. 덱? [자료 구조]#0_선형 자료구조[자료 구조] #0_선형 자료구조 선형 자webddevys.tistory.comdeque은 C++의 STL에서 제공하는 순차 컨테이너로, 컨테이너의 양 쪽 끝에서 접근/삽입/제거 작업이 모두 가능해, 사용자에게 유연함을 제공합니다. ..
1. UI 성능 1. PaintPaint 함수는 Unreal Engine에서 UI 요소를 화면에 그리기 위해 호출됩니다. 이 함수는 위젯의 렌더링 정보를 Slate Element Batcher에 전달합니다. 위젯 트리의 상속 구조에서 Paint 함수는 모든 자손 위젯에 대하여 재귀적으로 호출되며, 각 위젯의 BP 함수 호출 및 Tick 함수를 호출합니다. 이 함수들은 Hit Test Grid(쿼드 트리로 위젯의 Hit Testing과 Navigation을 수행)의 재 빌드를 유발하며, 성능에 많은 영향을 끼칩니다. 더불어, 위젯 트리의 과도한 상속 구조는 CPU의 잦은 Vtable 접근을 유발하며, 캐시 미스가 발생합니다. *Unreal Insight의 Draw Window를 통해 확인 가능합니다. ..
#1. UFUNCTION 매크로 1. 개념UFUNCTION()은 언리얼 엔진에서 C++ 함수를 엔진의 에디터에서 상호 운용이 가능하도록 해주는 매크로입니다. 이를 통해, C++ 환경에서 선언한 함수를 블루프린트에서 호출하거나, 정의하거나, 혹은 오버라이딩 할 수 있습니다. 2. 특징블루프린트와 C++간 상호 운용성 제공리플렉션 시스템 지원으로 런 타임에 함수 정보 접근 가능네트워크 리플리케이션, RPC 등 고급 기능 활성화 3. 종류BlueprintCallableBlueprintImplementableEventBlueprintNativeEventServerClientNetMulticastExec #1. BlueprintCallable 1. 개념BlueprintCallable 키워드는 UFUCNTION ..
#1. 문제 https://www.acmicpc.net/problem/2156 #2. 풀이 1. DP [알고리즘]#5_동적 계획법[알고리즘]#5_동적 계획법 동적 계획 알고리즘에 대해 알아보겠습니다. Overview 개념 예제 #0. 개념 1. 동적 계획법(Dynamic Programming) 동적 계획법은 최적화 문제를 해결하는 데 사용되는 알고리즘 디webddevys.tistory.comDP는 주어진 문제의 입력 크기에 따라서 중복되는 하위 문제를 재귀적으로 해결하고, 이 결과 값들을 기억하는 것으로 중복 계산을 방지해 최적화를 수행하고, 결과적으로 최적 해를 찾아냅니다. 2. 3가지 경우 고려하여, dp [i]를 업데이트//@조건1: i-2, i-1 번째 와인 마시고, i 번째 와인 안 마시기=..
#1. 문제 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr #2. 풀이 1. queue [Basic C++] #67_queue[Basic C++] #67_queue C++의 STL에서 제공하는 queue 컨테이너에 대해 알아보겠습니다. Overview 개념 선언 멤버 함수 예제 #0. 개념 1. 큐 [자료 구조]#0_선형 자료구조 [자료 구조] #0_선형 자료구조 선형 자료webddevys.tistory.comC++의 STL에서 제공하는 queue 컨테이너는 선입 선출 방식으로 동작하는 순차 컨테이너로, 한쪽 끝에서 삽입 작업, 다른 한쪽 끝에서는 제거 작..
#1. 문제 https://www.acmicpc.net/problem/5972 #2. 풀이 1. 다익스트라 [알고리즘]#2_길 찾기 알고리즘#1. 개념 1. 길 찾기 알고리즘[정의] : 길 찾기 알고리즘은 그래프 자료구조에서 출발점에서 도착점 사이의 경로를 탐색하는 알고리즘입니다. 노드와 노드 간 연결 관계를 나타내는 간선으로 구webddevys.tistory.com다익스트라 알고리즘은 단일-출발 최단 경로 알고리즘으로, 그래프 내 어떤 출발 정점으로부터 다른 모든 정점에 대하여 최단 경로 값을 찾는 알고리즘입니다. 다익스트라 알고리즘은 양수 가중치를 가지며, 순환 구조가 없는 그래프에서 활용 가능한 '단일-출발' 혹은 '단일-쌍' 최단 경로 알고리즘입니다. 2. 단일-출발 최단 경로 알고리즘 통해 ..