Software Development 378

[Unity] 1. 유니티 설치하기

1. 유니티 다운로드 사이트 접속 (http://unity3d.com/)2. 우측상단 'Unity 구매' -> 'Unity를 내 손에' 클릭 3. 무료로 공개된 'Personal Edition'을 다운로드 합니다. 4. 설치파일을 실행시킵니다. 실행 후 'Next', 'Accept'를 클릭 하신 후 'Next'하면 아래 Choose Components창이 나오게 됩니다. Choose Components에서는 본인이 빌드를 원하는 빌드환경을 체크하시고 'Next'를 클릭합니다. 이후 설치가 진행됩니다. 5. 설치 완료 후 'Launch Unity' 체크 후 Finish 클릭, Unity가 실행됩니다. Unity를 처음 실행하게 되면 계정을 입력하여야 되는데요, 계정이 아직 없으신 분들은 'create on..

[Vulkan] LunarG Vulkan SDK 환경설정/샘플 빌드하기 - Windows

최근 삼성에서 갤럭시 S7과 갤럭시 S7엣지를 공개하며, 세계 최초로 Vulakn(불칸) API를 공식 지원한다고 발표했다. (관련기사 : [MWC 2016] VR 내세운 갤럭시 S7... 핵심 무기는 '불칸' (http://biz.chosun.com/site/data/html_dir/2016/02/22/2016022200232.html) Vulkan은 비영리 표준화 단체인 크로노스 그룹이 주도하는 고성능의 차세대 표준 그래픽 API로, 제품의 그래픽 성능을 극대화할 수 있는 기술이다. 아래와 같은 특징을 지니고 있다. Vulkan 장점- 낮은 오버헤드, 크로스플랫폼 3D Graphics and Compute API - OpenGL을 잇는 차세대 그래픽 라이브러리- AMD의 Mantle API의 구성요소..

Combination, n개 중 k개를 고르는 방법의 수

문제)Combination nCk 는 n개 중 k개를 고르는 방법의 수이다. nCk를 구하는 일반식은 다음과 같다. 위 식은 n!을 이용하기 때문에 n이 커지면 overflow가 발생하여 정확한 값을 구할 수가 없다. 물론 위 방법 외에도 다양한 점화식으로 구할 수 있다. nCk를 정확하게 구하는 프로그램을 작성하시오. 첫 번째 줄에 n과 k가 공백으로 구분되어 입력된다. (단, 1 n >> k; cout

DFS/BFS 숙달을 위한 알고리즘 문제(기본/응용)

DFS/BFS의 경우 사실 이론은 조금만 읽어도 금방 이해가 가능한데요,그러나 막상 처음 구현하려 하면 바로 구현하기 힘든 경우가 많은데 알고리즘 문제를 반복적으로 풀며 구현해보면 금방 익숙하게 구현할 수 있게 됩니다. 다음은 DFS/BFS 학습을 위해 풀었던 문제들로[기본]은 간단하게 DFS/BFS를 이용하여 풀 수 있는 문제이고, [응용]은 DFS/BFS 중에도 조금 응용을 해야 풀 수 있는 문제입니다기본적인 이론을 학습한 후 아래 문제들을 순서대로 풀어보면 좋을 것 같습니다. [기본]1. 바이러스 : https://www.acmicpc.net/problem/26062. 단지번호 붙이기 : https://www.acmicpc.net/problem/26673. 보물섬 : https://www.acmic..

관계기반 알고리즘 설계_수학적 귀납법

관계기반 알고리즘 설계(1) 탐색기반 알고리즘 설계 : 컴퓨터의 빠른 연산 속도를 이용하여 짧은 시간에 가능한 해의 집합을 탐색하면서 최적의 해를 구하는 기술적인 방법(2) 관계기반 알고리즘 설계 : 해를 구하는 행위를 하나의 함수로 표현하고 이 함수들의 관계를 이용하여 해를 구하는 방법 - 문제의 정의 및 상태를 함수로 정의, 이 함수들 간의 관계를 점화식 혹인 이와 유사한 형태로 표현, 수학적 귀납법/점화식 등의 표현 기반 수학적 귀납법 - 자연수 n에 관한 명제 P(n)이 모든 자연수에 대해서 성립함을 증명하기 위한 수학의 증명법 중 한 방법 - 다음의 두가지 단계로 증명 1) P(1)이 성립함을 보인다. 2) P(k)가 성립한다고 가정하고 P(k+1)이 성립함을 보인다. - 수학적 귀납법을 이용한..

탐색기반 알고리즘 설계_3.깊이우선탐색(DFS)

3. 깊이우선탐색(Depth first search, dfs)그래프 중 회로(cycle)가 없는 그래프를 트리라고 한다. 이 트리의 가장 위에 있는 정점에서 출발하여 모든 정점들을 깊이 우선으로 탐색한다. 출발 정점을 트리의 가장 위에 있는 정점으로 하고, 한 정점에서 이동 가능한 정점이 여러개 있을 경우 왼쪽 정점부터 방문한다고 가정하면, 단계별 탐색 과정은 다음과 같다. 탐색과정에서 3단계 이후 더이상 진행할 정점이 없어 더이상 진행하지 않는다.이처럼 더이상 진행할 수 없을 때 다시 이전 정점으로 되돌아가는 과정이 필요한데, 일반적으로 이러한 과정을 백트랙(backtrack)이라고 한다. 백트랙은 비선형구조의 탐색에서 매우 중요하다. 백트랙은 스택(stack)이나 재귀함수(recursion)을 이용하..

탐색기반 알고리즘 설계_2.비선형구조탐색

2. 비선형 구조 탐색 - i번째 원소를 탐색한 다음 그 원소와 연결된 다른 원소를 탐색하려고 할 때, 여러 개의 원소가 존재하는 탐색구조 - 자료가 트리나 그래프로 구성되어 있을 경우 비선형구조, 이를 모두 탐색하는 것을 비선형 탐색이라 함. - 선형과 달리 자료가 순차적이지 않아 단순히 반복문을 이용하여 탐색하기에는 어려움 - 스택이나 큐와 같은 자료구조를 활용하여 탐색하는 것이 일반적. -일반적으로 깊이우선탐색(depth first search, dfs)과 너비우선탐색(breadth firrth search, bfs)으로 나뉨. (1) 비선형구조 : 그래프의 구성- 트리를 이루는 기본 요소를 정점(vertex)과 간선(edge)라 한다.- 원은 정점, 선분은 간선 - a-b 보통간선 - b-c 방향..

탐색기반 알고리즘 설계_1.선형구조탐색

※ 탐색이란? - 같은 형태의 한 개 이상의 자료들이 모여 있는 집합에서 특정 자료를 찾는 모든 작업 - 탐색할 자료가 저장되어 있는 구조를 먼저 파악하는 것이 중요 (탐색 구조가 직접적으로 드러난 경우는 쉬운문제, 직접 드러나지는 않으나 문제 해결과정에서 자체적으로 구조화하며 탐색하는 경우 중급 이상 문제) ※ 탐색기반설계 - 주어진 문제에서 주어진 데이터를 특성에 맞도록 구조화하고 이 자료를 적절한 방법으로 탐색해 나가면서 원하는 해를 찾는 알고리즘 설계법 - 전체를 탐색하는 전체탐색법과 탐색할 영역을 적절한 방법으로 배제하여 탐색의 효율을 높은 부분탐색법이 있다. ※ 탐색이 되는 구조 - 선형구조 : 배열이나 연결리스트로 표현될 수 있는 구조 - 비선형구조 : 트리나 그래프의 형태로 표현되는 구조 ..

Quick sort source

퀵소트1. Pivot(기준값)을 정한다.2. Pivot보다 작은 원소들은 왼쪽으로, pivot보다 큰 원소들은 오른쪽으로 보낸다.3. pivot을 기준으로 왼쪽 배열과 오른쪽 배열을 새로운 배열로 정하고, 각 배열 구간에 대해 1번 과정을 재귀적으로 반복한다. * 일반적으로 처음의 원소 또는 가장 마지막 원소를 pivot으로 잡는방법을 이용 12345678910111213141516171819202122232425262728293031323334353637383940414243#include#define SWAP(A,B) {int temp = A; A=B; B=temp;}int arr[101]; void quick_sort(int s, int e){ if(s>=e) return; int p = s; in..