문제 https://www.acmicpc.net/problem/6593 6593번: 상범 빌딩 당신은 상범 빌딩에 갇히고 말았다. 여기서 탈출하는 가장 빠른 길은 무엇일까? 상범 빌딩은 각 변의 길이가 1인 정육면체(단위 정육면체)로 이루어져있다. 각 정육면체는 금으로 이루어져 있어 www.acmicpc.net 풀이 방법 3차원 공간을 탐색해 시작지부터 목적지까지의 거리를 구하는 문제이다. 인접한 노드를 차례로 방문해 각 노드의 시작점까지의 거리를 구할 수 있는 BFS(너비 우선 탐색)을 사용해서 푼다. 탐색하면서 거리 배열을 갱신시켜주고, 탈출에 성공했을경우 목적지까지의 거리를 출력하면 된다. 코드 #include #include #include #include #include using namespa..
분류 전체보기

문제 기존의 Pawn 클래스가 갖고 있던 필드를 리팩토링을 위해 분리하려고 했다. Actor Component를 새롭게 생성해 이에 대한 포인터를 갖는 식으로 변경했다. 그러나 CreateDefaultSubobject(TEXT("컴포넌트이름")); 으로 생성을 해도 안되어 nullptr로 나오거나 UPROPERTY를 VisibleAnywhere로 해도 Blueprint editor에서 details가 보이지 않는 문제가 발생했다. 해결 블루프린트 에디터에서 Reparent Blueprint해서 다른 상위 클래스(ex: APawn)으로 변경한 뒤, 원래 클래스(ex: APawn을 상속받은 원래 나의 클래스 UGoKart)로 바꾼다. 멀티플레이 게임 개발 강의 듣다가 발생한 문제인데, 이렇게 해서 위의 문제..
문제 https://www.acmicpc.net/problem/10552 10552번: DOM The first line of input contains three integers N, M and P (1 ≤ N, M ≤ 105, 1 ≤ P ≤ M), the number of pensioners, the number of TV channels and the initial channel displayed on TV. Each of the following N lines contains two integers ai and bi (1 www.acmicpc.net 풀이 방법 싫어하는 채널을 좋아하는 채널로 변경하는 걸 하나의 간선으로 본다. 가장 어린 사람이 채널을 바꾸기 때문에, 이미 간선을 만들었으면 그 이..
Travel 언리얼의 Travel에는 크게 두 가지, Seamless와 non-seamless 방식이 있다. Travel은 쉽게 말해서 한 레벨에서 다른 레벨로 옮겨가는 것이다. 세션형 게임으로 예를 들어보자면, 세션에 접속했을때 로비맵에서 x명의 플레이어가 약 y분동안 대기하고 실제 플레이맵으로 옮겨지는 것이 Travel이다. Seamless Seamless는 원활하다는 뜻으로, non-blocking operation이다. 이름대로 매끄러운, 원활한 이동이며 Transition map이라는 중간에 거쳐가는 맵을 사용한다. 즉, A맵에서 B맵을 로딩할 때 순서는 A -> Transition map -> B가 된다. 왜 이렇게 하는걸까? 만약 로비맵은 엄청 작은 놀이터인데 실제 플레이맵은 거대한 섬이라고..