게임 개발
유형 구현-시뮬레이션 코드 array = [ [1, 1, 1, 1, 1], [1, 0, 0, 0, 1], [1, 1, 0, 1, 1], [1, 1, 1, 1, 1], [1, 1, 1, 1, 1] ] start_dir = 0 start_x = 1 start_y = 1 dx = [-1, 0, 1, 0] dy = [0, 1, 0, -1] count = 0 result = 1 while(1): array[start_x][start_y] = 1 left = start_dir-1 if left < 0: left = 3 pos_x = start_x + dx[left] pos_y = start_y + dy[left] if 0
상하좌우
문제 N행 N열에서 (1, 1)부터 시작해 조건에 따라 움직일 때, 결과는? 조건 : L or R or U or D 유형 일련의 명령에 따라서 개체를 차례대로 이동시킨다는 점에서 '구현-시뮬레이션' 알고리즘 n = 5 start = [1, 1] direction = ['R', 'R', 'R', 'U', 'D', 'D'] dx = [-1, 0, 1, 0] dy = [0, -1, 0, 1] dtype = ['U', 'L', 'D', 'R'] for i in direction: for j in range(4): if i == dtype[j]: x_pos = start[0] + dx[j] y_pos = start[1] + dy[j] if 1
볼링공 고르기
문제 N개의 볼링공을 같은 무게라도 번호가 다르면 서로 다른 공으로 간주할 때, 두 사람이 서로 다른 무게의 볼링공을 고를 수 있는 모든 경우의 수를 구하라. 아이디어 1. for, for 해서 모든 순열을 구한다. 2. 조합 - 같은 번호를 가진 볼링공 수 3. 기록을 통한 체크 입력 (1, 3, 2, 3, 2) - 출력 8 번호 : (1, 2), (1, 3), (1, 4), (1, 5), (2, 3), (2, 5), (3, 4), (4, 5) 무게 : (1, 3), (1, 2), (1, 3), (1, 2), (3, 2), (3, 2), (2, 3), (3, 2) - 볼링공의 조합을 생각해보면 결과적으로는 번호가 다르고 무게가 달라야한다. - 1. 번호를 고려해서 생각해보면 for 문 이외에는 생각이 ..