일지
-
알고리즘...4일지 2021. 5. 12. 08:02
점근적 표기 알고리즘의 효율성을 분석하기 위해 매우 큰 입력을 가정하여 분석하는 데 이 분석을 점근적 분석이라 한다. 극한에 대한 문제가 이러한 점근적 분석의 예이다. 이것의 의미는 n이 충분히 커짐에 따라 n의 비율로 증가한다는 것이다. 추가적으로 n와 10n, 2n^2의 예를 들면 다음과 같다. n 10n 2n^2 1 10 2 2 20 8 10 100 200 1,000 10,000 20,000 10,000 100,000 2,000,000 100,000 1,000,000 200,000,000 1,000,000 10,000,000 2,000,000,000,000 10,000,000 100,000,000 200,000,000,000,000 ... ... ... 10^10 10^11 2*10^20 10^20..
-
JUNGOL...72일지 2021. 5. 11. 08:47
Beginner_Coder/여러가지/오목 문제 오목은 바둑판에 검은 바둑알과 흰 바둑알을 교대로 놓아서 겨루는 게임이다. 바둑판에는 19개의 가로줄과 19개의 세로줄이 그려져 있는데 가로줄은 위에서부터 아래로 1번, 2번, ... ,19번의 번호가 붙고 세로줄은 왼쪽에서부터 오른쪽으로 1번, 2번, ... 19번의 번호가 붙는다. 위의 그림에서와 같이 같은 색의 바둑알이 연속적으로 다섯 알을 놓이면 그 색이 이기게 된다. 여기서 연속적이란 가로, 세로 또는 대각선 방향 모두를 뜻한다. 즉, 위의 그림은 검은색이 이긴 경우이다. 하지만 여섯 알 이상이 연속적으로 놓인 경우에는 이긴 것이 아니다. 입력으로 바둑판의 어떤 상태가 주어졌을 때, 검은색이 이겼는지, 흰색이 이겼는지 또는 아직 승부가 결정되지 않았..
-
알고리즘...3일지 2021. 5. 11. 08:18
재귀와 귀납적 사고 재귀를 사용하는 알고리즘이 많으며 일반적으로 재귀와 관계없다고 생각하는 선택 정렬이나 버블 정렬도 재귀적 관점에서 보면 이해하기 쉬워진다. 귀납적 사고는 작은 입력에 대해 옳다고 가정하고 큰 입력에 대한 처리를 진행하는 것을 말한다. 이는 수학적 귀납법의 작은 값에 대해 옳다고 가정하고 문제와의 관계를 통해 결론이 옳음을 보이는 것과 비슷하다. 알고리즘으로 푸는 문제 최단경로 알고리즘 두 지점간의 최단경로 혹은 최단시간의 경로를 찾는 것 ex) 네비게이션 스케줄링 한정된 자원을 효율적으로 이용하는 방법 ex) 자판기 관리 검색 원하는 검색 결과를 최대한 빨리 반환하는 것 ex) 인터넷 검색 엔진 정렬 주어진 값을 정해진 순서대로 정렬하는 방법 ex) 고객 메일링 리스트 참고문헌 참고문..
-
유니티...11일지 2021. 5. 10. 19:17
프로퍼티 드로어 스크립트에서 속성을 사용하거나 Serializable 클래스가 인스펙터 창에 표시되도록 하기위해 사용한다. 가령 아래의 스크립트를 오브젝트에 넣은 경우 인스펙터 창은 다음과 같다. Recipe.cs using System; using UnityEngine; public enum IngredientUnit { Spoon, Cup, Bowl, Piece } // Custom serializable class [Serializable] public class Ingredient { public string name; public int amount = 1; public IngredientUnit unit; } public class Recipe : MonoBehaviour { public In..
-
JUNGOL...71일지 2021. 5. 10. 12:23
Beginner_Coder/여러가지/떡 먹는 호랑이 문제 하루에 한 번 산을 넘어가는 떡 장사 할머니는 호랑이에게 떡을 주어야 산을 넘어갈 수 있는데, 욕심 많은 호랑이는 어제 받은 떡의 개수와 그저께 받은 떡의 개수를 더한 만큼의 떡을 받아야만 할머니를 무사히 보내 준다고 한다. 예를 들어 첫째 날에 떡을 1개 주었고, 둘째 날에는 떡을 2개 주었다면 셋째 날에는 1+2=3개, 넷째 날에는 2+3=5개, 다섯째 날에는 3+5=8개, 여섯째 날에는 5+8=13개를 주어야만 무사히 산을 넘어갈 수 있다. 우리는 산을 무사히 넘어온 할머니에게 오늘 호랑이에게 몇 개의 떡을 주었는지, 그리고 오늘이 호랑이를 만나 떡을 준지 며칠이 되었는지를 알아내었다. 할머니가 호랑이를 만나서 무사히 넘어온 D째 날에 준 떡..
-
머큐리얼...1일지 2021. 5. 10. 12:06
리비전 특정 방법 정수 숫자 양수 리비전 번호 음수 최신 리비전 기준 오프셋 문자열 40 자리 16진수 문자열 특정 리비전을 브랜치에 상관없이 유일하게 식별할 수 있는 식별자 40 자리가 안 되는 16진수 문자열 식별자의 뒷부분을 일부 잘라내도 유일하게 식별할 수 있을 때 사용 가능한 단축 식별자 이외의 문자열 북마크, 태그 또는 브랜치 명으로 사용되며 ":"를 포함해서는 안됨 예약된 문자열 tip 가장 최신 브랜치를 나타냄 null 빈 레포지토리의 리비전을 나타내는 것으로 0번째 리비전의 부모를 나타냄 . 현재 작업중인 레포지토리의 부모를 나타내며 최상위 브랜치인 경우 null과 동일함. 커밋되지 않은 머지는 첫 번째 부모를 나타냄 ※ 명령어에 리비전 세트가 주어진 경우 한 개의 리비전을 사용하는 명령..
-
JUNGOL...70일지 2021. 5. 6. 20:55
Beginner_Coder/여러가지/카드게임 문제 근우는 오늘 재미있는 카드 게임을 배우고 있다. 카드는 빨간색, 파란색, 노란색, 녹색의 네 가지 색이 있고, 색깔별로 1부터 9까지 숫자가 쓰여진 카드가 9장씩 있다. 카드는 모두 36(=4x9)장이다. 근우가 배운 카드 게임은 36장의 카드에서 5장을 뽑고, 아래와 같은 규칙으로 점수를 계산하는 것이다. 각 카드는 다음과 같이 나타낸다. 카드의 색깔은 영어 대문자 R, B, Y, G로 나타내는데, R은 빨간색, B는 파란색, Y는 노란색, G는 녹색을 뜻한다. 예를 들어서 Y8은 노란색 8을 나타내고, B5는 파란색 5를 나타낸다. ① 카드 5장이 모두 같은 색이면서 숫자가 연속적일 때, 점수는 가장 높은 숫자에 900을 더한다. 예를 들어, 카드가 ..