일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 개발일지
- 이득우
- upper_bound
- UI 자동화
- 웅진씽크빅
- unity
- 구현
- c#
- unreal
- 유니티
- 운영체제
- 안드로이드
- 시리얼라이제이션
- 게임개발공모전
- 백준
- BFS
- 너비우선탐색
- 유한상태기계
- 이분탐색
- 프로그래머스
- fsm
- DFS
- binary_search
- 게임개발
- c++
- lower_bound
- 알고리즘
- 재귀
- 인프런
- 언리얼
- Today
- Total
목록전체 글 (53)
초고교급 희망
찾고자하는 숫자가 얼마나 많이 있는지 구하는 문제였다. C++ STL에 있는 lower_bound와 upper_bound를 사용해도 좋지만 직접 구현하여도 좋다. 하지만 실제 시험에서는 제한 시간이 모자라거나, 긴장해서 실수할 수도 있기 때문에 STL을 쓰는 것이 더 좋을 것 같다. #include #include using namespace std; int n, m; int a[500001]; int lower_idx(int target, int n) { int st = 0; int ed = n; while (st < ed) { int mid = (st + ed) / 2; if (a[mid] < target) { st = mid + 1; mid = (st + ed) / 2; } else if (a[mi..
이분탐색을 이용한 문제였다. 이분탐색을 직접 구현해주어도 좋지만, STL에 있는 binary_search를 이용하여 빠르게 풀어주었다. 실제 코딩테스트에서는 시간이 부족한 경우가 많기 때문에 STL을 활용할 수 있다면 최대한 도움을 받고, 다음 문제를 풀러가는 것이 좋은 것 같다. 그리고 이분탐색 하기 전에 데이터 정렬하는 것 잊지 말기 #include #include #include using namespace std; int main() { int n, m; vector v; scanf("%d", &n); for (int i = 0; i < n; i++) { int temp; scanf("%d", &temp); v.push_back(temp); } sort(v.begin(), v.end()); sca..
안녕하세요. 날씨가 쌀쌀하니 귤의 계절이 돌아왔네요. 그래서 프로그래머스 귤 고르기를 풀어보았습니다. 🍊문제 https://school.programmers.co.kr/learn/courses/30/lessons/138476 🐼문제 설명 경화는 과수원에서 귤을 수확했습니다. 경화는 수확한 귤 중 'k'개를 골라 상자 하나에 담아 판매하려고 합니다. 그런데 수확한 귤의 크기가 일정하지 않아 보기에 좋지 않다고 생각한 경화는 귤을 크기별로 분류했을 때 서로 다른 종류의 수를 최소화하고 싶습니다. 예를 들어, 경화가 수확한 귤 8개의 크기가 [1, 3, 2, 5, 4, 5, 2, 3] 이라고 합시다. 경화가 귤 6개를 판매하고 싶다면, 크기가 1, 4인 귤을 제외한 여섯 개의 귤을 상자에 담으면, 귤의 크기의..
'초고교급 희망'에서 업로드한 동영상 동영상 꼭 끝까지 보셔야합니다!! run 부분을 마무리하기 위해 부족한 부분을 메꿔넣었습니다 1. EJ님이 개발하신 수학 문제 풀이랑 카운트 다운 등을 연결 코드를 이해하기 정말 편하게 적어주셔서 금방 갖다썼습니다. 와 편하다!! 2. 맵 돌아가는 것 수정... 매끄러운 게임 진행을 위해 달리기 속도를 제어하는 부분도 추가했어요 플레이어는 가만히 있고 맵이 돌아가는 방식입니다. 돌아가는 것들은 총 세 종류가 있어요 1. 반복하지 않고 그냥 돌아감 (맵 구성품: 책상, 자, 지우개, 치즈, 하늘 발판) 2. 작은 구간을 반복하는데, 꼬옥 붙어서 새로 생겨야 함 (창문) 3. 작은 구간을 반복하는데, 떨어져서 먼 위치에 새로 생겨야 함 (책상) 하나의 스크립트로 3가지..
Chapter 01 리팩터링이란? 겉으로 드러나는 코드의 기능(겉보기 동작)은 바꾸지 않으면서 내부 구조를 개선하는 방식으로 소프트웨어 시스템을 수정하는 과정이다. 예시 프로그램에서 발견한 수정할 부분 프로그램이 새로운 기능을 추가하기에 편한 구조가 아니라면, 먼저 기능을 추가하기 쉬운 형태로 리팩터링 하고나서 원하는 기능을 추가한다. 1)HTML로 출력하는 기능을 위한 복사본 로직을 변경할 일이 절대 없다면 상관없지만, 오래 사용할 프로그램이라면 중복 코드는 골칫거리가 된다. 2)연극 장르와 공연료 정책이 달라지는 변경사항 리팩터링이 필요한 이유는 바로 변경 때문이다. 다른 사람이 읽고 이해해야 할 일이 생겼는데로직을 파악하기 어렵다면 대책을 마련해야 한다. ‘디지털 시대의 연약한 자여, 그대 이름은 ..
기획님이 타일맵으로 깔아주신 맵을 적용했습니다 꽤 속도감이 중요한 장르라서... 성능에 신경을 꽤 써야겠더라구요 처음에 그냥 자동으로 적용되는 콜라이더를 씌웠더니 CPU가 300까지 올라가고 게임이 느려졌었습니다 그래서 콜라이더를 수정했더니 CPU 사용량이 확 낮아졌습니다 그리고 타일맵의 한계(?)를 좀 느껴서 맵 레벨 디자인이 끝나면 치즈 아이템은 오브젝트 풀링 방식으로 새로 깔아주려합니다... 또 2단점프가 수정되었는데요, 아주 미묘한 차이라서 사실 기획분과 저만 알아차릴 것 같네요... ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 기획님이 매의 눈썰미를 갖고 계셔서 점프 높이, 속도, 간격, 등등... 캐치를 잘하시더라구요 카페에서 만나서 제 노트북으로 이리저리 바꾼거 보여드리면서 계속 수정했어요 그 결과 이제 점프는 ..
이제 드디어 달리기 부분을 만들게 됐습니다! 그리고 컨텐츠 부분을 제가 맡게 되었어요 그 전에... 전투 부분에 애매하게 남아있던 부분을 마무리 했습니다. (저번 화에 남아있던 두 가지 참고 -> https://ymthebest.tistory.com/35 ) [수학레인저] 개발 일지 6화 (23년 7월 3주차) 이번 주 저의 할 일이었는데요 맨 밑에 두개...는 좀 손볼게 많아서 완성이 덜 됐네요. 중요한 내용 위주로 설명해드리겠습니다!! 참고로 미니언은! 보스 몬스터의 공격 스킬 중 하나인데요, 작은 ymthebest.tistory.com 미니언의 패턴이 조금 수정되었네요. 👍 그리고 약간의 리팩토링이 있었씁니다. 이제 전투 부분은 이걸로 마무리하고 앞으로는 달리기에 집중할 계획입니다. 그리고 이제 런..
https://ymthebest.tistory.com/38 [Unity] UI 자동화 (1) 서론... [SerializeField] TMP_Text _text; ↑ 위와 같이 유니티 툴에서 직접 해당하는 오브젝트들을 바인딩하게 되면 번거롭다. 툴에서 하지 않고 코드를 통해 바인딩 하는 UI 자동화에 대해 배워보겠습니 ymthebest.tistory.com 저번 게시글에 이어서 UI 이벤트를 알아보겠습니다. UI_EventHandler.cs using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using UnityEngine.EventSystems; public class UI_EventHan..