일지
-
머큐리얼...3일지 2021. 6. 23. 08:58
연산자 not x(또는 !x) 주어진 x가 아닌 체이진 셋을 찾는다. x::y(또는 x..y) 리비전 x와 y 사이에 존재하는 모든 체인지 셋을 찾는다. x:y 리비전 x와 y 사이에 존재하는 모든 체인지 셋을 찾는다. 단, x와 y는 동일한 브랜치여야 한다. x and y(또는 x & y) 체인지 셋 x와 y의 교집합을 찾는다. x or y(또는 x | y 또는 x + y) 체인지 셋 x와 y의 합집합을 찾는다. x - y 체인지 셋 x와 y의 차집합을 찾는다(x와 y 중 x에만 포함된 경우를 찾는다). x % y 체인지 셋 x의 조상이면서 y의 조상이 아닌 체인지 셋을 찾는다. x^n 체인지 셋의 n번째 부모 체인지 셋을 찾는다(n이 0이면 자신을 가리킨다). x~n 체인지 셋의 n번째 조상을 찾는다..
-
JUNGOL...77일지 2021. 6. 23. 08:43
Beginner_Coder/소분류/연속부분합 찾기 문제 N개의 정수를 담고 있는 배열이 주어졌을 때, 여기서 가능한 연속 부분합의 최댓값을 구하는 프로그램을 작성하라. 여기서 연속 부분합이라는 것은 배열에서 연속된 숫자들을 선택해서 합하였을 때의 값을 말한다. 아무 배열도 택하지 않는 경우도 연속 부분합에 포함됨을 유의하자. 입력 형식 입력의 첫 번째 줄에는 정수 N(1≤N≤105)가 입력된다. 그리고 그 다음 줄에는 N개의 배열에 담긴 숫자가 순서대로 입력된다. 숫자의 범위는 -100이상 100이하의 정수다. 출력 형식 입력에 대한 가장 큰 연속 부분합을 출력한다. 입력 예 4 | 10 1 2 -2 4 | 3 -4 0 1 7 -4 13 -9 8 -3 출력 예 5 | 17 FindMaximumSubarr..
-
알고리즘...11일지 2021. 6. 22. 21:40
테스트용 난수 생성 및 시간 체크 함수 구현 알고리즘의 효율성 테스트를 위해 1,000,000 개의 난수를 생성하여 텍스트 파일로 저장 및 불러오기 함수 구현 common.hpp #pragma once #include #include #include #define MAKE_RANDOM_NUMBERS #ifdef MAKE_RANDOM_NUMBERS #include #include #endif namespace Common { #ifdef MAKE_RANDOM_NUMBERS int* GenerateRandomNumber(int n = 100'000) { std::default_random_engine randomEngine; std::uniform_int_distribution distribution(0, ..
-
알고리즘...10일지 2021. 6. 16. 10:44
선택 정렬_계속 위 알고리즘을 실제 구현하고 과정을 살펴보면 다음과 같다. SelectionSort.hpp #pragma once #include "../Common.hpp" void SelectionSort(int arr[], int n) { Common::PrintArray(arr, n); for (int i = 1; i < n; i++) { int biggest{ n - i }; for (int j = 0; j < n - i; j++) { if (arr[biggest] < arr[j]) { biggest = j; } } Common::Swap(arr, biggest, n - i); Common::PrintArray(arr, n); } } main.cpp #include "Sort/SelectionS..
-
알고리즘...9일지 2021. 6. 14. 12:38
선택 정렬 모든 정렬 알고리즘 중 가장 간단한 알고리즘으로 배열 A [1... n]에서 가장 큰 원소를 찾아 A [n]과 자리를 바꾸고 [1... n-1]에 대해 이전 과정을 반복하여 정렬을 마무리한다. 선택 정렬 알고리즘 SelectionSort(A[], n) { for last ← n downto 2 { A[1...last] 중 가장 큰 수 A[k]를 찾는다. A[k] ↔ A[last] } } 이 알고리즘의 수행 시간은 for 루프에 비례하는데 이 루프는 n ~ 2까지 반복하므로 총 비교 회수는 n(n-1)/2 이므로 Θ(n²)이 된다. 더보기 참고문헌 한빛아카데미.문병로.(2016.07.24).쉽게 배우는 알고리즘
-
알고리즘...8일지 2021. 5. 26. 09:48
정렬이란 n개의 원소를 순서대로 배열하는 것으로 실생활에 다양하게 사용되는 알고리즘이다. 가령 학생을 키 순서대로 줄을 세운다거나 세무서에서 고지서를 날리기 위해 주민등록 번호순으로 정렬하는 것 등을 예로 들 수 있다. - 정렬의 종류 정렬에는 여러 종류가 있으며 대표적으로 다음과 같은 정렬이 존재한다. 선택 정렬 가장 큰 원소 또는 가장 작은 원소를 찾아 첫 위치 또는 마지막 위치와 자리를 바꾸는 정렬, Ο(n²) 버블 정렬 두 개의 원소를 비교하여 정렬 방향에 따라 서로 자리를 바꾸는 연산을 반복하는 정렬, Ο(n²) 병합 정렬 원소를 두 구역으로 나누는 것을 반복한 뒤 병합하며 자리를 바꾸는 연산을 반복하는 정렬, Ο(nlogn) 퀵 정렬 특정 값을 기준으로 영역을 나누어 자리를 바꾸는 연산을 반복..
-
머큐리얼...2일지 2021. 5. 17. 21:48
여러 리비전 특정 방법 머큐리얼은 revsets라고 불리는 리비전을 선택하는 언어를 지원한다. revsets는 여러 예약어와 연산자를 지원하며 이것들을 조합해 원하는 리비전 리스트를 얻을 수 있다. 가령 괄호는 그룹핑에 사용되며 따옴표나 쌍 따옴표로 특수문자 혹은 공백이 포함된 식별자를 나타낼 수 있다. 또, 쌍 따옴표를 이용해 개행 문자(\n) 같은 특수 문자를 사용할 수도 있다. 예약어가 아닌 문자열 자체를 사용하고 싶을 때는 다음과 같이 r을 붙인 따옴표를 이용하면 된다. "not x" -> "r'not x'" 더보기 참고문헌 Mercurial.repo.help.hg-revsets
-
유니티...14일지 2021. 5. 17. 20:29
트리 뷰 계층적 구조를 가진 개체를 표시해줄 수 있는 IMGUI 컨트롤이다. ※ 트리 구조 데이터뿐 아니라 모든 유형의 데이터에서 사용 가능하다. - 트리 뷰 구조 TreeViewState 에디터의 트리 뷰 필드와 연결할 때 변경되는 상태 정보를 포함하며 유일하게 직렬화 가능한 클래스이다. TreeViewItem 개별 트리 뷰의 아이템에 관련된 데이터를 포함하며 에디터에서 트리 구조 모양을 만들 때 사용한다. BuildRoot 트리 뷰를 생성하기 위해 필요한 단일 추상 메서드이다. BuildRows 생성된 루트를 기반으로 행 리스트 구축을 처리하는 가상 메서드이다. 더보기 참고문헌 Unity2018.Documentation.트리 뷰