분류 전체보기

문제 https://www.acmicpc.net/problem/2096 2096번: 내려가기 첫째 줄에 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 숫자가 세 개씩 주어진다. 숫자는 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 중의 하나가 된다. www.acmicpc.net 풀이 방법 이전 위치 + 현재 위치의 정보를 바탕으로 다음 줄로 계속해서 내려갔을 때 최소 점수와 최대 점수를 구하는 문제다. DP를 이용해서 풀어야한다는 것을 알 수 있지만, 모든 줄의 정보를 저장하면 메모리 초과가 발생한다. 처음엔 int dp[2][100001][3]으로 했었는데 메모리 초과가 발생했다. 단순히 계산해보면 2 * 3 * 100,001 + 3 * 100,001 = 대략 900,000개의..
·일상/기타
Super Simple Online Game Development: Unreal Engine and C++ 로컬&멀티플레이어 게임을 만드는 강의로 C++에 대한 지식이 있는 언리얼 초중급 대상 강의, 네트워크 레이턴시 기본부터 상태 동기화까지 포함 되어 있으며, 대규모 게임을 다루지는 않지만 MMO www.udemy.com 시작하게 된 이유 Udemy 광고 아님. 언리얼 엔진을 배워보고 싶었고, 멀티플레이어 게임 개발에 관심이 많았기 때문이다. 언리얼 엔진을 배우려는 시도는 한 두번 하긴 했다. 엔진에서 제공하는 기능 자체에 대한 설명은 공식 문서에 너무나 잘 되어있다. 하지만 from scratch 방식의 설명은 너무나 부족하다. 처음부터 하나씩 따라가며 완성해보는 프로젝트가 없었다. (요즘은 있는지 ..
문제 https://www.acmicpc.net/problem/1516 1516번: 게임 개발 첫째 줄에 건물의 종류 수 N(1 ≤ N ≤ 500)이 주어진다. 다음 N개의 줄에는 각 건물을 짓는데 걸리는 시간과 그 건물을 짓기 위해 먼저 지어져야 하는 건물들의 번호가 주어진다. 건물의 번호는 1부 www.acmicpc.net 풀이 방법 1005번 ACM Craft와 비슷한 문제다. 위상 정렬과 DP를 활용하는 문제이므로 잘 모르겠다면 위 링크를 통해 설명을 보는 것을 추천한다. 위 문제와 차이점은 입력 형식이 다르다는 점, 모든 건물의 건설 완성 시간을 출력해야 하는 점이다. 코드 #include #include #include #include using namespace std; int main() ..
문제 https://www.acmicpc.net/problem/1520 1520번: 내리막 길 첫째 줄에는 지도의 세로의 크기 M과 가로의 크기 N이 빈칸을 사이에 두고 주어진다. 이어 다음 M개 줄에 걸쳐 한 줄에 N개씩 위에서부터 차례로 각 지점의 높이가 빈 칸을 사이에 두고 주어진다. www.acmicpc.net 풀이 방법 항상 낮은 칸으로 이동하며 제일 왼쪽 위 칸에서 제일 오른쪽 아래 칸으로 갈 수 있는 경로의 개수를 구하는 문제다. 처음엔 단순한 탐색문제인 줄 알고 모든 케이스를 다 탐색해서 개수를 구하려고 했다. 하지만 최악의 경우를 생각해본다면 한 정점에서 4방향으로 모든 정점을 계속해서 탐색할 수도 있기 때문에 다른 방법이 필요하다. 좀 더 생각해보면, 어떤 점(y, x)에서 제일 오른쪽..
virtus
'분류 전체보기' 카테고리의 글 목록 (15 Page)