전체 글 (842) 썸네일형 리스트형 [백준 16500번] 문자열 판별 (C++) 문제링크 : https://www.acmicpc.net/problem/16500 #include using namespace std;typedef long long ll;typedef pair pii;const int MAX = INT_MAX;string s;int N;string arr[101];int dp[101];int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin >> s >> N; for(int i=0; i> arr[i]; dp[s.size()]=1; for(int i=s.size(); i>=0; i--) { for(int j=0; j 어떻게 dp 식을 세워야 하는지 감이 잘 안 잡혔던 문제이다.다른.. Unreal Engine 5 - C++ 개발자: C++ 학습하고 비디오 게임 제작하기 Section 6-33 C++로 커스텀 BTTasks 구성하기이제 행동 트리에 더 많은 기능을 구성해보록 하자.이에 앞서 이번 강의에서는 C++로 커스텀 BTTasks 구성하는 것을 해보게 된다. 일단 기존의 마지막 위치를 탐색하는 노드의 이름을 바꿔주고 데코레이터로 LastKnownPlayerLocation을 할당해주자. 다음으로 BTTask 기반의 C++ 클래스를 새로 생성해준다.우리는 블랙보드 키 값을 적극적으로 사용하고 있기 때문에 BTTask_BlackboardBase 기반을 선택해준다. 이제 헤더와 CPP 파일이 생성될 것이다.헤더에 생성자를 통 태스크를 직접 생성해보자. 이렇게 하면 아직 기능은 없지만, 해당 이름을 가진 노드를 행동 트리에서 생성할 수 있게 된다.이제 할당하고 실행해보면 해당 태스크를 무사히 완.. [백준 1660번] 캡틴 이다솜 (C++) 문제링크 : https://www.acmicpc.net/problem/1660 #include using namespace std;typedef long long ll;typedef pair pii;const int MAX = INT_MAX;int N;int arr[121], dp[300001];int main(){ ios_base::sync_with_stdio(0); cin.tie(0); for(int i=1; i> N; for(int i=1; i 먼저 사면체 대포알 수 구하는 공식을 이용하여 미리 사면체 대포알 갯수를 구해준다.이때 문제의 대포알 최대 갯수가 30만인데, 이에 맞게 가능한 최대 i 값인 120까지 구하도록 하였다. 이후 dp 배열을 초기화 해주는데 사면체를 생각하지 .. Unreal Engine 5 - C++ 개발자: C++ 학습하고 비디오 게임 제작하기 Section 6-32 BT 데코레이터 및 셀렉터현재는 간단하게 플레이어에게 왔다가 일정 시간 지나면 원래 위치로 돌아가는 시퀸스를 설정하였다.우리의 목표는 플레이어가 보이면 플레이어 위치로 이동하고, 아니라면 플레이어의 마지막 위치로 이동하는 것이다.이러한 기능을 위해 셀렉터 노드를 사용할 수 있다.셀렉터 노드 아래 위치한 내용은 첫 태스크가 성공할 때까지 실행하게 된다. 그리고 시퀸스의 데코레이터 기능을 통하여 조건을 설정하는 것이 가능하다.우리는 기존의 블랙보드 키를 이용할 것이므로 블랙보드로 설정한다. 아래는 현재 SelfActor가 설정된 상태이다.우리는 플레이어 위치를 찾아야 하므로 플레이어 위치로 설정해주자.그러면 플레이어 위치가 존재한다면 해당 시퀸스를 실행하게 된다. 만약 플레이어 시야에서 사라지면 거기까지 가.. [백준 1793번] 타일링 (python) 문제링크 : https://www.acmicpc.net/problem/1793dp = [0 for i in range(251)]while(True): try: n = int(input()) dp[0]=1 dp[1]=1 dp[2]=3 dp[3]=5 for i in range(4, n+1): dp[i] = dp[i-1] + 2*dp[i-2] print(dp[n]) except: break 출력 범위로 인해 python으로 푼 문제이다.C++로 풀 경우 큰 수를 다뤄야 하기 때문에 훨씬 복잡해진다. 점화식의 경우 N=3 까지 그림을 직접 그려보면 어렵지 않게 알 수 있다.N=3의.. Unreal Engine 5 - C++ 개발자: C++ 학습하고 비디오 게임 제작하기 Section 6-31 행동 트리 태스크 및 시퀸스이제 AI가 실제로 앞뒤로 이동하도록 만들어보자.이를 위해 행동 트리에서 태스크를 생성해주어야 한다.이번 강의에서는 단순 이동을 테스트 할 것이기 때문에 Move To 태스크를 사용해보자. 이렇게 생성한 태스크는 시퀸스 아래에 위치하게 된다.시퀸스 아래에 할당한 태스크들은 해당 시퀸스 차례가 되면 순서대로 할당된 태스크들을 실행하게 된다. Move To 태스크를 더 자세히 살펴보면 어디로 이동할 것인지 위치 설정이 가능하다.여기서 우리가 전에 만들었던 블랙보드 키를 이용하여 PlayerLocation 지정이 가능하다. 이동 후에 잠깐 멈췄다가 다시 이동하는 것을 원하므로 Wait 태스크도 생성해주자.Wait 태스크 또한 얼마나 멈출 것 인지에 대한 값 할당이 가능하다. 플레이어.. [백준 12852번] 1로 만들기 2 (C++) 문제링크 : https://www.acmicpc.net/problem/12852 #include using namespace std;typedef long long ll;typedef pair pii;const int MAX = INT_MAX;int N;int dp[1000001];int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin >> N; for(int i=1; i 기본적인 초기화는 3번 조건에 해당하는 값으로 설정해준다.이에 따라 각 idx에 해당 하는 값은 idx-1의 횟수를 필요로 하므로 이에 맞게 초기화를 진행했다. 이후 1, 2번 조건에 대해 체크하며 더 작은 경우를 확인해준다.또 이어서 기존 3번 조건과 1, 2번 조건을.. [백준 2502번] 떡 먹는 호랑이 (C++) 문제 링크 : https://www.acmicpc.net/problem/2502 #include using namespace std;typedef long long ll;typedef pair pii;const int MAX = INT_MAX;int D, K;int A[31];int B[31];int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cin >> D >> K; A[0] = 1; A[1] = 0; //A, B B[0] = 0; B[1] = 1; for(int i=2; i 먼저 간단하게 규칙을 찾아보면 다음과 같다.i = 0A (= A*1 + B*0)i = 1B (= B*0 + B*1)i = 2A + Bi = 3A + .. 이전 1 ··· 17 18 19 20 21 22 23 ··· 106 다음