KMP 알고리즘
·
C++
문자열 매칭 알고리즘은 크게 3가지가 있다.KMP : 문자열 S가 있을 때, 패턴 P를 찾는 알고리즘Trie : 문자열 N개가 있을 때, 문자열 S를 찾는 알고리즘Aho-corasick : 문자열 N개가 있을 때, 패턴 P를 찾는 알고리즘그 중 KMP에 대해 알아보자 KMP 알고리즘은 KMP 알고리즘을 만든 Knuth, Morris, Prett의 앞글자를 따서 이름을 붙였다.KMP 알고리즘에서 알아야 하는 것은1. 접두사와 접미사apple을 예시로aapappapplapple elepleppleapple이다. 2. pi 배열pi[i]는 주어진 문자열의 0~i까지의 부분문자열 중 접두사==접미사가 될 수 있는 부분 문자열 중 가장 긴 것의 길이다이때, 접두사가 0~i까지의 부분 문자열과 같으면 안된다. 문자..
백준 11720번 숫자의
·
C++
숫자의 합 성공 시간 제한메모리 제한제출정답맞힌 사람정답 비율1 초256 MB27154415066012377155.962%문제N개의 숫자가 공백 없이 쓰여있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.입력첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100)이 주어진다. 둘째 줄에 숫자 N개가 공백없이 주어진다.출력입력으로 주어진 숫자 N개의 합을 출력한다.예제 입력 1 복사11예제 출력 1 복사1예제 입력 2 복사554321예제 출력 2 복사15예제 입력 3 복사257000000000000000000000000예제 출력 3 복사7예제 입력 4 복사1110987654321예제 출력 4 복사46  풀이법 :scanf를 이용하여 정수를 1자리씩 받는다 -> "%1d"를 통하여 1자리씩 정수를 받을..
백준 1003번 피보나치 함수
·
C++
1003번: 피보나치 함수 (acmicpc.net) 피보나치 함수 성공 시간 제한메모리 제한제출정답맞힌 사람정답 비율0.25 초 (추가 시간 없음)128 MB228663716965675033.548%문제다음 소스는 N번째 피보나치 수를 구하는 C++ 함수이다.int fibonacci(int n) { if (n == 0) { printf("0"); return 0; } else if (n == 1) { printf("1"); return 1; } else { return fibonacci(n‐1) + fibonacci(n‐2); }}fibonacci(3)을 호출하면 다음과 같은 일이 일어난다.fibonacci(3)은 fib..
하나의 정수 나눠 입력받기
·
C++
001000 과 같은 정수가 들어오는 경우 0 0 1 0 0 0으로 데이터를 나눠서 받기 위해서 scanf를 사용한다#include using namespace std;int main(){ int bread[11][11]; int N, M; cin >> N >> M; for (int j = 0; j = 0; j--) { cout  scanf("%1d",...); 를 통해 들어오는 입력 데이터를 1개씩 받도록 지정한다.
Damage Indicator Object Pooling
·
Unreal Engine 5/MMORPG 개발
Damage Indicator를 제작한 후 데미지가 전달 될 때마다 Spawn Actor를 통해 Object가 지속적으로 생성되어야 하기 때문에 성능적으로 문제가 발생하지 않을까?? 싶어서 Object Pooling을 진행해보기로 했다. Damage Indicator의 관리는 GameInstance를 통해 관리한다.GameInstance를 통해 해당 Object를 요청하고 반환한다. 성공적으로 구현하였으며, Object가 지속적으로 스폰되지 않고 기본 공격만으로는 Damage Indicator가 2개 까지만 늘어나는 것을 확인했다. 이를 기반으로 Monster에 대한 Object Pooling을 구현해볼 예정이다.
ue5 DataTable 구조체 제작
·
Unreal Engine 5/MMORPG 개발
C++로 DataTable를 위한 구조체를 생성하는데 필요한 조건이 몇 가지 있다.1. 헤더파일 #include "Engine/DataTable.h"이 필요하다2. 해당 구조체에 FTableRowBase를 상속받아야한다3. USTRUCT()와 GENERATED_BODY() 매크로를 통해 구조체 생성을 알려야 한다. DataTable을 이용하려는 구조체는 uint32와 같은 변수타입을 지원하지 않기 때문에 신경써야 한다.