본문 바로가기

전체 글342

1.명령(command) 명령 패턴은 메서드 호출을 실체화한 것이다. 실체화는 실제하는 것으로 만든다는 의미이고, 프로그래밍에선 변수에 저장하거나 함수에 전달할 수 있도록 객체로 바꾼다는 것을 의미한다. 즉, 명령 패턴을 '메서드 호출을 실체화한 것'이라고 한 것은 함수 호출을 객체로 감쌌다는 의미다. 입력키 변경 게임에서는 유저의 입력을 받고, 게임에서 의미 있는 행동으로 전환된다. void InputHandler::HandleInput() { if( IsPress( BUTTON_X ) ) Jump(); else if( IsPress( BUTTON_Y ) ) FireGun(); else if( IsPress( BUTTON_A ) ) SwapWeapon(); else if( IsPress( BUTTON_B ) ) LurchIne.. 2023. 3. 5.
차례 1장 : 도입 구조, 성능, 게임 2장 : 디자인 패턴 다시 보기 명령 경량 관찰자 프로토타입 싱글턴 상태 3장 : 순서 패턴 이중 버퍼 게임 루프 업데이트 메서드 4장 : 행동 패턴 바이트코드 하위 클래스 샌드박스 타입 객체 5장 : 디커플링 패턴 컴포넌트 이벤트 큐 서비스 중개자 6장 : 최적화 패턴 데이터 지역성 더티 플래그 객체 풀 공간 분할 2023. 1. 25.
이분탐색 > 징검다리 (Level 4) 문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/43236 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   문제 설명출발지점부터 distance만큼 떨어진 곳에 도착지점이 있습니다. 그리고 그사이에는 바위들이 놓여있습니다. 바위 중 몇 개를 제거하려고 합니다.예를 들어, 도착지점이 25만큼 떨어져 있고, 바위가 [2, 14, 11, 21, 17] 지점에 놓여있을 때 바위 2개를 제거하면 출발지점, 도착지점, 바위 간의 거리가 아래와 같습니다.제거한 바위의 위치각 바위 사이의 거리거리의 최솟값[.. 2022. 12. 8.
이분탐색 > 입국심사 (Level 3) 문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/43238 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   문제 설명n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간은 다릅니다.처음에 모든 심사대는 비어있습니다. 한 심사대에서는 동시에 한 명만 심사를 할 수 있습니다. 가장 앞에 서 있는 사람은 비어 있는 심사대로 가서 심사를 받을 수 있습니다. 하지만 더 빨리 끝나는 심사대가 있으면 기다렸다가 그곳으로 가서 심사를 받을 수도 있습니다.. 2022. 12. 8.
깊이/너비 우선 탐색(DFS/BFS) > 게임 맵 최단거리 (Level 2) 문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  문제 설명ROR 게임은 두 팀으로 나누어서 진행하며, 상대 팀 진영을 먼저 파괴하면 이기는 게임입니다. 따라서, 각 팀은 상대 팀 진영에 최대한 빨리 도착하는 것이 유리합니다.지금부터 당신은 한 팀의 팀원이 되어 게임을 진행하려고 합니다. 다음은 5 x 5 크기의 맵에, 당신의 캐릭터가 (행: 1, 열: 1) 위치에 있고, 상대 팀 진영은 (행: 5, 열: 5) 위치에 있는 경우의 예시입니다.. 2022. 12. 8.
탐욕법(Greedy) > 섬 연결하기 (Level 3) 문제 링크https://school.programmers.co.kr/learn/courses/30/lessons/42861 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  문제 설명n개의 섬 사이에 다리를 건설하는 비용(costs)이 주어질 때, 최소의 비용으로 모든 섬이 서로 통행 가능하도록 만들 때 필요한 최소 비용을 return 하도록 solution을 완성하세요.다리를 여러 번 건너더라도, 도달할 수만 있으면 통행 가능하다고 봅니다. 예를 들어 A 섬과 B 섬 사이에 다리가 있고, B 섬과 C 섬 사이에 다리가 있으면 A 섬과 C 섬은 서로 통행 가능.. 2022. 11. 7.