목록2024/02 (12)
개발하는 리프터 꽃게맨입니다.
https://www.acmicpc.net/problem/11062 11062번: 카드 게임 근우와 명우는 재미있는 카드 게임을 하고 있다. N개의 카드가 일렬로 놓여 있다. 각 카드에는 점수가 적혀있다. 근우부터 시작하여 번갈아가면서 턴이 진행되는데 한 턴에는 가장 왼쪽에 있는 www.acmicpc.net 아이디어 처음에는 그리디 알고리즘 문제인줄 알고 deque를 이용해서 현재 최고 가치를 가지는 카드를 뽑는 방식을 로직을 사용했는데, 최선의 전략으로 게임이 끝났을 때, 최고 점수를 얻어야 하는 것이더라구요. 그러면 현재 최선의 선택잉 미래에는 최선이 아닐 수 있습니다. 이럴 때는 다이나믹 프로그래밍을 사용해야죠! dp[i][j] 는 i번째 카드 ~ j번째 카드가 있을 때, 근우의 최대 점수를 뜻합니..
게임은 총 3개의 함수에 의해 진행됩니다. (1) 초기화 함수 (2) 업데이트 함수 (3) 렌더링 함수 초기화 함수는 게임 시작에 있어서 초기에 설정해야할 값을 정의하고, 메인 루프에서는 업데이트 함수와 렌더링 함수가 계속 실행되면서 연산 및 그리기 작업을 수행합니다. 그래서 우리는 게임을 관리할 매니저 클래스가 필요합니다. 그것을 GameManager 라고 하고, 여기서 싱글톤 패턴을 사용하게 됩니다. 아래는 싱글톤에 대해 참고할 포스팅입니다. 더보기 https://powerclabman.tistory.com/66 [C++/디자인패턴] 싱글톤 (Singletone) 개요 싱글톤 패턴은 하나의 클래스가 하나의 객체만 가지도록 하면서 이 객체에 대한 접근은 전역으로 제공하는 디자인 패턴 입니다. 게임을 만..