[프로그래머스/C++ 문제 풀이] Lv. 1 - 크레인 인형뽑기 게임
·
코딩테스트/프로그래머스 (Lv. 1)
문제 설명게임개발자인 "죠르디"는 크레인 인형뽑기 기계를 모바일 게임으로 만들려고 합니다."죠르디"는 게임의 재미를 높이기 위해 화면 구성과 규칙을 다음과 같이 게임 로직에 반영하려고 합니다.게임 화면은 "1 x 1" 크기의 칸들로 이루어진 "N x N" 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. (위 그림은 "5 x 5" 크기의 예시입니다). 각 격자 칸에는 다양한 인형이 들어 있으며 인형이 없는 칸은 빈칸입니다. 모든 인형은 "1 x 1" 크기의 격자 한 칸을 차지하며 격자의 가장 아래 칸부터 차곡차곡 쌓여 있습니다. 게임 사용자는 크레인을 좌우로 움직여서 멈춘 위치에서 가장 위에 있는 인형을 집어 올릴 수 있습니다. 집어 올린 인형은 바구니에 쌓이게 되는 데, 이때..
[Unity] 코루틴(Coroutine)
·
Game Programming/Unity Engine
코루틴(Coroutine)이란?유니티 엔진에서 코루틴은 실행을 일시 정지하고 제어를 Unity에 반환하지만 중단한 부분에서 다음 프레임을 계속할 수 있는 메서드입니다. 주로 비동기적 작업을 처리할 때 사용되며, 게임 루프의 각 프레임에서 특정 시점에 일시 중지되고 다시 시작될 수 있습니다.  대부분의 경우 메서드를 호출하면 실행을 완료한 뒤 호출한 메서드에 제어와 선택적 반환 값을 반환하게 됩니다. 즉, 메서드 내에서 발생한 모든 행동은 단일 프레임 업데이트 내에 발생하게 됩니다. 하지만 코루틴을 사용한다면 여러 프레임에 걸쳐 실행할 수 있는 코드를 작성할 수 있습니다. 유니티 Documentation에서는 HTTP 전송, 에셋 로드, 파일 I/O 완료 등을 기다리는 것과 같이 긴 비동기 작업을 처리해야..
[프로그래머스/C++ 문제 풀이] Lv. 1 - 성격 유형 검사하기
·
코딩테스트/프로그래머스 (Lv. 1)
문제 설명나만의 카카오 성격 유형 검사지를 만들려고 합니다.성격 유형 검사는 다음과 같은 4개 지표로 성격 유형을 구분합니다. 성격은 각 지표에서 두 유형 중 하나로 결정됩니다. 4개의 지표가 있으므로 성격 유형은 총 16(=2 x 2 x 2 x 2)가지가 나올 수 있습니다. 예를 들어, "RFMN"이나 "TCMA"와 같은 성격 유형이 있습니다.검사지에는 총 n개의 질문이 있고, 각 질문에는 아래와 같은 7개의 선택지가 있습니다.매우 비동의비동의약간 비동의모르겠음약간 동의동의매우 동의각 질문은 1가지 지표로 성격 유형 점수를 판단합니다.예를 들어, 어떤 한 질문에서 4번 지표로 아래 표처럼 점수를 매길 수 있습니다. 이때 검사자가 질문에서 약간 동의 선택지를 선택할 경우 어피치형(A) 성격 유형 1점을 ..
[프로그래머스/C++ 문제 풀이] Lv. 1 - 신규 아이디 추천
·
코딩테스트/프로그래머스 (Lv. 1)
문제 설명카카오에 입사한 신입 개발자 네오는 "카카오계정개발팀"에 배치되어, 카카오 서비스에 가입하는 유저들의 아이디를 생성하는 업무를 담당하게 되었습니다. "네오"에게 주어진 첫 업무는 새로 가입하는 유저들이 카카오 아이디 규칙에 맞지 않는 아이디를 입력했을 때, 입력된 아이디와 유사하면서 규칙에 맞는 아이디를 추천해주는 프로그램을 개발하는 것입니다.다음은 카카오 아이디의 규칙입니다.아이디의 길이는 3자 이상 15자 이하여야 합니다.아이디는 알파벳 소문자, 숫자, 빼기(-), 밑줄(_), 마침표(.) 문자만 사용할 수 있습니다.단, 마침표(.)는 처음과 끝에 사용할 수 없으며 또한 연속으로 사용할 수 없습니다."네오"는 다음과 같이 7단계의 순차적인 처리 과정을 통해 신규 유저가 입력한 아이디가 카카오..
[청년취업사관학교 SeSAC] 레벨테스트와 면접, 합격 후기
·
일상
개요저는 게임 클라이언트 프로그래머 직무를 준비하는 취업 준비생입니다.컴퓨터 공학 전공자이며, 23년 2월 졸업 이후 1년 반 동안 게임 개발에 필요한 기술(C++, WinAPI, DirectX11, Unreal Engine)들을 공부해 왔습니다. 결과적으로 1년간 포트폴리오라고 부르기도 민망할 수준의 DirectX11 프로젝트와, 그나마 볼만했던 Unreal Engine 프로젝트를 2회 제작하였습니다. 제작했던 포트폴리오를 바탕으로 최근 정말 많은 이력서를 넣었고, 대부분의 회사에서 서류탈락 하며 자신감이 많이 떨어진 상태로 이제는 뭘 더 해야 하나 막막한 상황이었습니다. 그러던 도중 SeSAC이라는 교육 기관을 알게 되었고 마침 7월 24일부터 시작하는 [언리얼 엔진 콘텐츠 개발자 양성 과정 - 게임..
[프로그래머스/C++ 문제 풀이] Lv. 1 - 바탕화면 정리
·
코딩테스트/프로그래머스 (Lv. 1)
문제 설명코딩테스트를 준비하는 머쓱이는 프로그래머스에서 문제를 풀고 나중에 다시 코드를 보면서 공부하려고 작성한 코드를 컴퓨터 바탕화면에 아무 위치에나 저장해 둡니다. 저장한 코드가 많아지면서 머쓱이는 본인의 컴퓨터 바탕화면이 너무 지저분하다고 생각했습니다. 프로그래머스에서 작성했던 코드는 그 문제에 가서 다시 볼 수 있기 때문에 저장해 둔 파일들을 전부 삭제하기로 했습니다.컴퓨터 바탕화면은 각 칸이 정사각형인 격자판입니다. 이때 컴퓨터 바탕화면의 상태를 나타낸 문자열 배열 wallpaper가 주어집니다. 파일들은 바탕화면의 격자칸에 위치하고 바탕화면의 격자점들은 바탕화면의 가장 왼쪽 위를 (0, 0)으로 시작해 (세로 좌표, 가로 좌표)로 표현합니다. 빈칸은 ".", 파일이 있는 칸은 "#"의 값을 가..
[프로그래머스/C++ 문제 풀이] Lv. 1 - 달리기 경주
·
코딩테스트/프로그래머스 (Lv. 1)
문제 설명얀에서는 매년 달리기 경주가 열립니다. 해설진들은 선수들이 자기 바로 앞의 선수를 추월할 때 추월한 선수의 이름을 부릅니다. 예를 들어 1등부터 3등까지 "mumu", "soe", "poe" 선수들이 순서대로 달리고 있을 때, 해설진이 "soe"선수를 불렀다면 2등인 "soe" 선수가 1등인 "mumu" 선수를 추월했다는 것입니다. 즉 "soe" 선수가 1등, "mumu" 선수가 2등으로 바뀝니다.선수들의 이름이 1등부터 현재 등수 순서대로 담긴 문자열 배열 players와 해설진이 부른 이름을 담은 문자열 배열 callings가 매개변수로 주어질 때, 경주가 끝났을 때 선수들의 이름을 1등부터 등수 순서대로 배열에 담아 return 하는 solution 함수를 완성해주세요.제한 사항5 ≤ pl..
[프로그래머스/C++ 문제 풀이] Lv. 1 - 개인정보 수집 유효기간
·
코딩테스트/프로그래머스 (Lv. 1)
문제 설명고객의 약관 동의를 얻어서 수집된 1~n번으로 분류되는 개인정보 n개가 있습니다. 약관 종류는 여러 가지 있으며 각 약관마다 개인정보 보관 유효기간이 정해져 있습니다. 당신은 각 개인정보가 어떤 약관으로 수집됐는지 알고 있습니다. 수집된 개인정보는 유효기간 전까지만 보관 가능하며, 유효기간이 지났다면 반드시 파기해야 합니다.예를 들어, A라는 약관의 유효기간이 12 달이고, 2021년 1월 5일에 수집된 개인정보가 A약관으로 수집되었다면 해당 개인정보는 2022년 1월 4일까지 보관 가능하며 2022년 1월 5일부터 파기해야 할 개인정보입니다.당신은 오늘 날짜로 파기해야 할 개인정보 번호들을 구하려 합니다.모든 달은 28일까지 있다고 가정합니다.다음은 오늘 날짜가 2022.05.19일 때의 예시..