분류 전체보기 115

[220811] Level_ 1 같은 숫자는 싫어!

https://school.programmers.co.kr/learn/courses/30/lessons/12906 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include using namespace std; vector solution(vector arr) { vector answer; answer.push_back(arr[0]); for (int i = 1; i < arr.size(); i++) { if (arr[i - 1] == arr[i]) continue; else answer.push_back(arr[i]); } return answer; }

[UE4] LNK2001 LNK2019 ERROR 해결법

원인 언리얼에서 어떠한 클래스를 상속받은 새로운 C++클래스를 만들었을 때 컴파일하면 에러가 발생하고, 에디터를 다시 켜봐도 켜지지 않는 경우가 발생한다. 삽질한 결과 LNK에러는 링크할 때 나는 오류인데 소스코드 오류가 아니라 초보자가 찾기 어렵다고한다. 결론은 선언부는 있으나 구현부가 없어 나는 오류로 언리얼의 경우엔 상속받고자 하는 클래스의 모듈이 추가되어있지 않아 발생하는 오류이다. 무려 14년전 글이지만 밑의 블로그가 도움이 많이 되었다 ㅠㅜ https://rnathsus.tistory.com/40 해결 먼저 비주얼 sln (솔루션파일)로 들어간다. -> 솔루션 탐색기로 프로젝트명.Build.cs 파일을 찾는다. -> 본인이 추가하고 싶은 부모클래스가 속한 모듈을 추가해준다. 여담 밤새 공부하다..

UE4 2022.08.11
[220811] Level_ 1 음양 더하기

https://school.programmers.co.kr/learn/courses/30/lessons/76501 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include using namespace std; int solution(vector absolutes, vector signs) { int answer = 0; for (int i = 0; i < absolutes.size(); i++) { if (signs[i]) answer += absolutes[i]; else answer -= absolutes[i]; } return answer; }..

[UE4] 언리얼의 핫리로드(Hot Reload)시스템

모듈(Module)이란 무엇인가? 모듈이란 프로그램을 구성하는 구성 요소로, 관련된 데이터와 함수를 하나로 묶은 단위를 의미한다. 보통 프로그램 코드를 기능별로 나눠서 독립된 파일에 저장하여 관리하는데 이러한 방식을 모듈화 프로그래밍이라고 한다. 모듈들은 개별적으로 컴파일된 후, 링커에 의해 하나의 실행 파일로 만들어진다. 자세한 내용은 이 블로그를 참고하도록 하자. https://nerdooit.github.io/2020/09/08/cpp_book_2.html 핫리로드(Hot Reload)란 무엇인가? 언리얼엔진은 유니티와 마찬가지로 핫 리로드를 지원한다. 언리얼 에디터의 실행 중에 에디터가 사용하고 있는 모듈을 컴파일하면 언리얼 에티터는 이를 감지해 기존의 모듈을 내리고 신규 모듈로 바꾸는 작업을 수..

UE4 2022.08.09
[220808] Level1_ 두 개 뽑아서 더하기

https://school.programmers.co.kr/learn/courses/30/lessons/68644 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이법 STL의 컨테이너인 Set이 중복을 허용하지 않으면서 자동정렬된다는 점을 이용해 문제를 쉽게 해결할 수 있었다. 이중 for문은 옛날에 많이 했던 별피라미드 알고리즘과 유사하다. #include #include #include using namespace std; vector solution(vector numbers) { vector answer; set result; int num = ..

[220807] Level_ 1 모의고사

https://school.programmers.co.kr/learn/courses/30/lessons/42840 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include using namespace std; vector solution(vector answers) { vector answer; int order1[5] = { 1, 2, 3, 4, 5 }; int order2[8] = { 2, 1, 2, 3, 2, 4, 2, 5}; int order3[10] = { 3, 3, 1, 1, 2, 2, 4, 4, 5, 5 }; vector..

[220806] Level_ 1 2016년

https://school.programmers.co.kr/learn/courses/30/lessons/12901 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include using namespace std; string solution(int a, int b) { string answer = ""; vector week = { "THU","FRI", "SAT" ,"SUN", "MON", "TUE", "WED"}; vector month = { 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }; ..

Map container 정리

Map이란? C++의 STL에서 연관 컨테이너 중 하나인 map은 레드 블랙 트리로 구성되어 있다. 레드 블랙 트리는 자가 균형 이진 탐색 트리로 삽입과 삭제가 일어나는 경우에 자동으로 그 높이를 작게 유지하는 것이 특징이다. 이 이유는 연산 과정에서 트리의 높이가 한쪽으로 치우치는 것을 막아 시간복잡도 상의 이득을 보기 위함이다. n개의 원소가 있을 때 map은 O(log n)의 시간 복잡도로 삽입, 삭제, 검색을 할 수 있다. key값은 중복이 불가능하며 만약 동일한 key가 있는데 insert를 시도할 시 무시된다. 또한 key값은 오름차순 자동정렬되는데 정렬을 하고싶지 않다면 unordered_map(해시)를 선언해 성능을 높일 수 있다. 선언하는 법 헤더파일에 map을 include 시켜주고, ..

C++/STL 2022.08.05
[220805] Level_ 1 완주하지 못한 선수 (오답노트)

https://school.programmers.co.kr/learn/courses/30/lessons/42576 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 완주하지 못한 선수가 나처럼 느껴지는 문제였다,, 효율성 검사 5개 모두 0점을 맞으며 틀려버린 문제! 이중 for문 쓸때부터 쎄하긴 했지.. 역시 아니다 싶으면 코딩에선 확실히 아니다. 구글링을 통해 찾은 방법으로 내 방법이 어디가 왜 틀린건지 정확히 분석해보겠다. 내코드 #include #include #include using namespace std; string solution(vecto..