분류 전체보기
-
유니티 FSM 유한 상태 머신 - 몬스터 상태 관리Unity 2024. 3. 19. 18:36
안녕하세요 유니티 FSM을 이용한 몬스터 상태를 구현해봤습니다. [BaseState.cs] public abstract class BaseState { public abstract void StateEnter(); public abstract void StateExit(); public abstract void StateUpdate(); } 추상 클래스를 하나 만들어 줍니다. [EnemyState.cs] // 상태 종류 public enum EEnemyState { Tracking, Attack, Die, } #region 변수 private Enemy enemy; #endregion // 변수 #region 프로퍼티 public BaseState[] stateArray { get; private set..
-
C# 25757 - 임스와 함께하는 미니게임백준 2024. 2. 19. 12:46
문제 임스가 미니게임을 같이할 사람을 찾고 있습니다. 플레이할 미니게임으로는 윷놀이 Y, 같은 그림 찾기 F, 원카드 O가 있습니다. 각각 2, 3, 4 명이서 플레이하는 게임이며 인원수가 부족하면 게임을 시작할 수 없습니다. 사람들이 임스와 같이 플레이하기를 신청한 횟수 N과 임스가 플레이할 게임의 종류가 주어질 때, 최대 몇 번이나 임스와 함께 게임을 플레이할 수 있는지 구하시오. 임스와 여러 번 미니게임을 플레이하고자 하는 사람이 있으나, 임스는 한 번 같이 플레이한 사람과는 다시 플레이하지 않습니다. 임스와 함께 플레이하고자 하는 사람 중 동명이인은 존재하지 않습니다. 임스와 lms0806은 서로 다른 인물입니다. 입력 첫 번째 줄에는 사람들이 임스와 같이 플레이하기를 신청한 횟수 N과 같이 플레..
-
C# 4659 - 비밀번호 발음하기백준 2024. 2. 5. 11:26
문제 좋은 패스워드를 만드는것은 어려운 일이다. 대부분의 사용자들은 buddy처럼 발음하기 좋고 기억하기 쉬운 패스워드를 원하나, 이런 패스워드들은 보안의 문제가 발생한다. 어떤 사이트들은 xvtpzyo 같은 비밀번호를 무작위로 부여해 주기도 하지만, 사용자들은 이를 외우는데 어려움을 느끼고 심지어는 포스트잇에 적어 컴퓨터에 붙여놓는다. 가장 이상적인 해결법은 '발음이 가능한' 패스워드를 만드는 것으로 적당히 외우기 쉬우면서도 안전하게 계정을 지킬 수 있다. 회사 FnordCom은 그런 패스워드 생성기를 만들려고 계획중이다. 당신은 그 회사 품질 관리 부서의 직원으로 생성기를 테스트해보고 생성되는 패스워드의 품질을 평가하여야 한다. 높은 품질을 가진 비밀번호의 조건은 다음과 같다. 모음(a,e,i,o,u..
-
유니티 웅크리기 구현 - 플레이어 웅크리기Unity 2024. 2. 3. 21:37
안녕하세요 오늘은 저번 시간에 진행한 플레이어 이동에 이어서 웅크리기를 구현했습니다. [인스펙터] 설정된 값 입니다. 함수를 작성하면서 값을 임의로 변경해 테스트 해보세요 모든 함수는 PlayerMovement.cs에서 작성되었습니다. [변수] 웅크리기 상태일때 속도 웅크리기를 눌렀을 때 플레이어 크기 웅크리기 시작 전 플레이어 크기 [상태] 각 움직임에 따른 상태를 만들어 줍니다. FSM으로 구현해도 좋습니다. [초기화] /** 초기화 */ private void Start() { rigid.freezeRotation = true; // 점프 초기화 PlayerResetJump(); crouchStartScaleY = this.transform.localScale.y; } 웅크리기 시작전 Scale Y..
-
C# 7568 - 덩치백준 2024. 2. 2. 18:03
문제 우리는 사람의 덩치를 키와 몸무게, 이 두 개의 값으로 표현하여 그 등수를 매겨보려고 한다. 어떤 사람의 몸무게가 x kg이고 키가 y cm라면 이 사람의 덩치는 (x, y)로 표시된다. 두 사람 A 와 B의 덩치가 각각 (x, y), (p, q)라고 할 때 x > p 그리고 y > q 이라면 우리는 A의 덩치가 B의 덩치보다 "더 크다"고 말한다. 예를 들어 어떤 A, B 두 사람의 덩치가 각각 (56, 177), (45, 165) 라고 한다면 A의 덩치가 B보다 큰 셈이 된다. 그런데 서로 다른 덩치끼리 크기를 정할 수 없는 경우도 있다. 예를 들어 두 사람 C와 D의 덩치가 각각 (45, 181), (55, 173)이라면 몸무게는 D가 C보다 더 무겁고, 키는 C가 더 크므로, "덩치"로만 볼..
-
C# 8979 - 올림픽백준 2024. 1. 31. 17:16
문제 올림픽은 참가에 의의가 있기에 공식적으로는 국가간 순위를 정하지 않는다. 그러나, 많은 사람들이 자신의 국가가 얼마나 잘 하는지에 관심이 많기 때문에 비공식적으로는 국가간 순위를 정하고 있다. 두 나라가 각각 얻은 금, 은, 동메달 수가 주어지면, 보통 다음 규칙을 따라 어느 나라가 더 잘했는지 결정한다. 금메달 수가 더 많은 나라 금메달 수가 같으면, 은메달 수가 더 많은 나라 금, 은메달 수가 모두 같으면, 동메달 수가 더 많은 나라 각 국가는 1부터 N 사이의 정수로 표현된다. 한 국가의 등수는 (자신보다 더 잘한 나라 수) + 1로 정의된다. 만약 두 나라가 금, 은, 동메달 수가 모두 같다면 두 나라의 등수는 같다. 예를 들어, 1번 국가가 금메달 1개, 은메달 1개를 얻었고, 2번 국가와..
-
C# 10431 - 줄세우기백준 2024. 1. 31. 00:23
문제 초등학교 선생님 강산이는 아이들을 데리고 단체로 어떤 일을 할 때 불편함이 없도록 새로 반에 배정받은 아이들에게 키 순서대로 번호를 부여한다. 번호를 부여할 땐 키가 가장 작은 아이가 1번, 그 다음이 2번, ... , 가장 큰 아이가 20번이 된다. 강산이네 반 아이들은 항상 20명이며, 다행히도 같은 키를 가진 학생은 한 명도 없어서 시간이 조금 지나면 아이들은 자기들의 번호를 인지하고 한 줄로 세우면 제대로 된 위치에 잘 서게 된다. 하지만 매년 첫 며칠간 강산이와 강산이네 반 아이들은 자기가 키 순으로 몇 번째인지 잘 알지 못해 아주 혼란스럽다. 자기 위치를 찾지 못하는 아이들을 위해 강산이는 특별한 방법을 생각해냈다. 우선 아무나 한 명을 뽑아 줄의 맨 앞에 세운다. 그리고 그 다음부터는 ..
-
C# 9655 - 돌 게임백준 2024. 1. 29. 22:43
문제 돌 게임은 두 명이서 즐기는 재밌는 게임이다. 탁자 위에 돌 N개가 있다. 상근이와 창영이는 턴을 번갈아가면서 돌을 가져가며, 돌은 1개 또는 3개 가져갈 수 있다. 마지막 돌을 가져가는 사람이 게임을 이기게 된다. 두 사람이 완벽하게 게임을 했을 때, 이기는 사람을 구하는 프로그램을 작성하시오. 게임은 상근이가 먼저 시작한다. 입력 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 1000) 출력 상근이가 게임을 이기면 SK를, 창영이가 게임을 이기면 CY을 출력한다. [정답] int n = int.Parse(Console.ReadLine()); // 상근이부터 턴 시작 // 홀수, 짝수 판별 if(n % 2 == 1) { // 홀수 승리 Console.WriteLine("SK"); } else { //..