분류 전체보기
[백준 7662번 C/C++] 이중 우선순위 큐
[백준 7662번 C/C++] 이중 우선순위 큐
2023.12.12[백준 7662번 C/C++] 이중 우선순위 큐 https://www.acmicpc.net/problem/7662 7662번: 이중 우선순위 큐 입력 데이터는 표준입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터의 첫째 줄에는 Q에 적 www.acmicpc.net 해결방안 우선순위 큐 priority_queue set 처음 시도한 코드 #include #include using namespace std; int t, k; priority_queue pQ1; priority_queue pQ2; int main(){ ios::sync_with_stdio(false); cin.tie(0); cout.tie(0)..
[UE] Actor 복제 및 SRT 변경하는 Tool 만들기
[UE] Actor 복제 및 SRT 변경하는 Tool 만들기
2023.12.11언리얼 엔진 에디터에서 Actor를 배치하거나 위치를 조작하는 경우는 흔하다. 예를 들어, 맵에 몬스터 100마리를 배치한다고 가정했을때 몬스터 한마리 한마리 배치하기 시작하면 시간이 너무 많이 소요된다. 이 때, 몬스터 100마리를 각각 X, Y좌표로 1000 간격으로 배치하고 바라보는 방향으로 랜덤으로 돌리면 빠르게 맵에 배치할 수 있고 테스트하기도 좋다. 이런 기능을 담당하는 툴을 만들었다. 목차 Actor SRT Tool 만들기 UEditorSubsystem 기능을 사용할 것이다 UEditorActorSubsystem TArray GetSelectedLevelActors() TArray GetAllLevelActors() QuickActorActionWidget 생성 새 C++ 클래스 - Edit..
[UE] Subsystem 종류: UEngineSubsystem, UEditorSubsystem, UGameInstanceSubsystem, ULocalPlayerSubsystem, UWorldSubsystem
[UE] Subsystem 종류: UEngineSubsystem, UEditorSubsystem, UGameInstanceSubsystem, ULocalPlayerSubsystem, UWorldSubsystem
2023.12.11글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자입니다 목차 Subsystem Subsystem 종류 UEngineSubsystem UEditorSubsystem UGameInstanceSubsystem ULocalPlayerSubsystem UWorldSubsystem Subsystem 타입 Life Time Engine UEngineSubsystem - Editor, In-game - 시작 Engine Subsystem의 Module이 로드 → Module의 Startup() 함수 반환 →..
[백준 7569번 C/C++] 토마토
[백준 7569번 C/C++] 토마토
2023.12.11[백준 7569번 C/C++] 토마토 https://www.acmicpc.net/problem/7569 7569번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N과 쌓아올려지는 상자의 수를 나타내는 H가 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M ≤ 100, 2 ≤ N ≤ 100, www.acmicpc.net 해결전략 너비 우선 탐색 BFS 정답 코드 #include #include #include using namespace std; int dirY[4] = { -1, 0, 1, 0 }; int dirX[4] = { 0, -1, 0, 1 }; struct Coor { int ht, y, x; }; int m, n, h; vector v; /..
2023.12.10 운동일지
2023.12.10 운동일지
2023.12.10조긴 5.29km
2023.12.09 운동일지
2023.12.09 운동일지
2023.12.10웨이트 1시간
[백준 25682번 C/C++] 체스판 다시 칠하기 2
[백준 25682번 C/C++] 체스판 다시 칠하기 2
2023.12.09[백준 25682번 C/C++] 체스판 다시 칠하기 2 https://www.acmicpc.net/problem/25682 25682번: 체스판 다시 칠하기 2 첫째 줄에 정수 N, M, K가 주어진다. 둘째 줄부터 N개의 줄에는 보드의 각 행의 상태가 주어진다. B는 검은색이며, W는 흰색이다. www.acmicpc.net 해결전략 누적합, 동적 프로그래밍 Dynamic Programming DP 체스판 위에 k x k 크기의 정사각형을 놓았을 때, 정사각형 내의 체스판 칸 색깔을 바꿔서 모두 같은 색으로 만드는 데 필요한 최소 변경 횟수를 찾는다. 처음 시도한 코드 - 98%에서 실패 #include #include #include using namespace std; int n, m, k; vect..
[프로그래머스 C++] 시소 짝꿍
[프로그래머스 C++] 시소 짝꿍
2023.12.08[프로그래머스 C++] 시소 짝꿍 https://school.programmers.co.kr/learn/courses/30/lessons/152996 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 조합(Combination)과 해시맵(Hash Map) '조합'이란 n개의 원소 중에서 r개를 순서 없이 선택하는 것을 의미한다. 이 코드에서는 동일한 몸무게를 가진 사람들의 쌍을 찾기 위해 조합을 사용한다. '해시맵'이라는 데이터 구조를 사용했다. 해시맵은 키와 값을 한 쌍으로 저장하는 데이터 구조로, 여기서는 몸무게를 Key로, 그 몸무게를 가진 사..
[UE] Texture로 Material 생성하기
[UE] Texture로 Material 생성하기
2023.12.07언리얼 엔진에서는 Material과 Material Instance를 사용해서 Texture들을 묶어서 관리한다. Texture의 종류로는 Metalic, Roughness, Normal, Ambient Occulution, BaseColor 등 다양하다. 이번에는 이런 다양한 Texture들을 선택한 후 버튼 클릭 하나로 Material를 생성하고 Material 내의 Texture들의 노드를 자동으로 이어주도록 할 것이다. 목차 Material 생성 버튼 WBP로 만들기 UEditorUtilityWidgets를 상속받는 위젯클래스 QuickMaterialCreationWidget UEditorUtilityWidgets를 상속받는 위젯클래스를 만들어 사용할 것이다 UEditorUtilityWidgets..
[UE] Content Browser Extender Menu에 아이콘 등록하기
[UE] Content Browser Extender Menu에 아이콘 등록하기
2023.12.07Content Browser Extender Menu에 아이콘 등록하기 아이콘 등록하기 구현방법 1. Custom FSlateStyle Set에서 할 일 Custom FSlateStyle Set으로 사용할 SWManageStyle 클래스를 만들고 아래 작업들을 수행한다. Style set 이름 설정하기 static FName StyleSetName; Custom Style set 생성하기: static TSharedRef CreateSlateStyleSet(); 파일 경로를 가져와서 Icon 이미지를 로드 TSharedRef CustomStyleSet = MakeShareable(new FSlateStyleSet(StyleSetName)); const FString IconDirectory = IPlug..
[백준 1753번 C/C++] 최단경로
[백준 1753번 C/C++] 최단경로
2023.12.07[백준 1753번 C/C++] 최단경로 https://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 해결전략 Dijkstra 다익스트라 처음 시도한 코드 - 시간초과 #include #include #include using namespace std; int v, e; // v: 정점의 개수, e: 간선의 개수 int k; // k: 시작 정점 vector graph; struct Edge { int vertex; in..
[프로그래머스 C++] 배달
[프로그래머스 C++] 배달
2023.12.07[프로그래머스 C++] 배달 https://school.programmers.co.kr/learn/courses/30/lessons/12978 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해결전략 Dijkstra 다익스트라 알고리즘 (최단경로 알고리즘) 다익스트라(Dijkstra) 알고리즘은 그래프에서 한 노드에서 다른 모든 노드까지의 최단 경로를 찾는 알고리즘이다. 이 알고리즘은 가중치가 음수인 간선이 없는 그래프에서만 사용할 수 있\다. 다익스트라 알고리즘 출발 노드를 설정 pQ.push(Edge(1,0)) 출발 노드를 기준으로 그래프의 모든 노드의..