728x90

분류 전체보기 119

언리얼엔진5 컴파일 오류 (C++)

언리얼엔진을 설치하고 C++로 빈 프로젝트를 만드는 중에 컴파일 에러가 계속 발생 함 언리얼 엔진에서 C++ 프로젝트용 Visual Studio 개발 환경 구성하기 | 언리얼 엔진 5.2 문서 (unrealengine.com) Visual Studio 구성하기 언리얼 엔진에서 Visual Studio 사용을 위해 구성하기 위한 팁, 트릭, 기술을 소개합니다. docs.unrealengine.com 위의 언리얼엔진 공식 문서도 확인해서 똑같이 세팅했는데도 불구하고 계속 컴파일 에러가 떴다. 재설치를 해도 해결이 안됐는데 아래 링크를 보고 설마? 하고 경로를 변경 하였더니 정상적으로 작동하였다. Missing SharedPCH.Engine.ShadowErrors.h.pch - Development / Pro..

Unreal 2023.05.31

전체 탐색에서 부분합 문제를 비트를 사용하는 방법

부분합 문제 예를들어, vec{1,2,4,5,11} 이라는 숫자의 부분합으로 10이 나올 수 있는지 파악하는 방법으로 비트연산으로 하는 방법이 있어서 블로그에 기록해본다 비트연산을 활용하여 하는 방법이 있는데, 위의 벡터의 부분합의 가지수는 총 32가지 즉, 비트로 11111 (2^5) 로 나타낼 수 있다. 예를 들면 1, 4, 5를 선택 하면 10이 나오는데, 이는 비트로 01101(오른쪽부터 vec[0]이라고 치면) 로 나타낼 수 있다. 코드로 치면 다음과 같다 #include #include using namespace std; int main() { bool isCanmake = false; vector vec = { 1,2,4,5,11 }; int answer = 10; for (int i = ..

Algorithm 2023.04.09

C#에서 람다식 사용하기 (특히 Sort)

C++의 경우 sort(a.begin(), b.end(), [&](int a, int b){ return a>b; }); 위와 같이 람다식을 사용하여 Sort를 자주 표현한다. (위의 경우에 내림차순 -> 10, 9, 8 ... ) C#에서는 람다식은 좀더 간단하지만 ( (매개변수)=>{함수정의} 의 형태 ) return 이 bool이 아닌 int를 반환하게 된다. 그렇다면 어떻게 정렬을 할까? C#은 -1을 return 할 경우 그대로 1을 return 할 경우 순서를 바꾼다 생각하면 된다. 예를들어 List.Sort( (a, b) => { if(a>b) return -1; else return 1; }); 의 경우 a>b 일 때, 순서를 안바꾼다하면, 내림차순 (즉, 앞쪽이 큰 수) 가 된다. 이는 ..

C# \ Unity 2022.12.19

프렌즈 4블록

문제 설명 프렌즈4블록 블라인드 공채를 통과한 신입 사원 라이언은 신규 게임 개발 업무를 맡게 되었다. 이번에 출시할 게임 제목은 "프렌즈4블록". 같은 모양의 카카오프렌즈 블록이 2×2 형태로 4개가 붙어있을 경우 사라지면서 점수를 얻는 게임이다. 만약 판이 위와 같이 주어질 경우, 라이언이 2×2로 배치된 7개 블록과 콘이 2×2로 배치된 4개 블록이 지워진다. 같은 블록은 여러 2×2에 포함될 수 있으며, 지워지는 조건에 만족하는 2×2 모양이 여러 개 있다면 한꺼번에 지워진다. 블록이 지워진 후에 위에 있는 블록이 아래로 떨어져 빈 공간을 채우게 된다. 만약 빈 공간을 채운 후에 다시 2×2 형태로 같은 모양의 블록이 모이면 다시 지워지고 떨어지고를 반복하게 된다. 위 초기 배치를 문자로 표시하..

Bubble Sort

버블 정렬 버블 정렬은 옆에 있는 값과 비교하여 더 작은 값을 앞으로 보내는 것이다. 따라서 5 3 4 1 2 라고 있으면 3 5 4 1 2 3 4 5 1 2 3 4 1 5 2 3 4 1 2 5 이와 같이 한번 순회를 하면 맨 뒤가 제일 큰 값이 오게 된다. 한번 순회가 완료되면 맨 뒤는 비교해 줄 필요가 없다. 따라서 이중 for문을 이용하여 다음과 같이 구현 할 수 있다. vector BubbleSort(vector& _vec) { for (int i = 0; i _vec[j + 1]) // 앞의 값이 더 크다면 { int iTemp = _vec[j]; ..

Algorithm 2022.06.27

수식 최대화

문제 설명 IT 벤처 회사를 운영하고 있는 라이언은 매년 사내 해커톤 대회를 개최하여 우승자에게 상금을 지급하고 있습니다. 이번 대회에서는 우승자에게 지급되는 상금을 이전 대회와는 다르게 다음과 같은 방식으로 결정하려고 합니다. 해커톤 대회에 참가하는 모든 참가자들에게는 숫자들과 3가지의 연산문자(+, -, *) 만으로 이루어진 연산 수식이 전달되며, 참가자의 미션은 전달받은 수식에 포함된 연산자의 우선순위를 자유롭게 재정의하여 만들 수 있는 가장 큰 숫자를 제출하는 것입니다. 단, 연산자의 우선순위를 새로 정의할 때, 같은 순위의 연산자는 없어야 합니다. 즉, + > - > * 또는 - > * > + 등과 같이 연산자 우선순위를 정의할 수 있으나 +,* > - 또는 * > +,-처럼 2개 이상의 연산자..