BOJ 15663 N과 M (9)
·
Algorithm/문제풀이
https://www.acmicpc.net/problem/15663 문제 풀이이전 N과 M문제들과 다른점은 이제 입력한 수들이 중복된 수가 들어갈 수 있다는 점이다. 또한 문제 조건에서 중복되는 수는 여러번 출력하면 안된다고 하였기 때문에 그에 대한 처리를 해줘야 한다.처음에 temp에 들어갈 수는 7 다시 백트래킹을 하고 난 뒤 다음에 들어갈 수는 1,9 7은9랑 겹치지 않으므로 그대로 출력. 그다음 temp는 9인데 그림에서 마지막에 1,9에서 9가 들어올 수인데 temp과 중복 되므로 if문 안드로 들어오지 못하고 넘어감. #include #include #include #include #include #include #include #include #include #include #include ..
BOJ 15650 N과 M (2)
·
Algorithm/문제풀이
15650번: N과 M (2)문제자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오.1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열고른 수열은 오름차순이어야 한다입력첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8)출력한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. 문제 풀이이 문제는 백트래킹을 사용하여 문제를 풀었습니다. 백트래킹이란 ? 현재 상태에서 가능한 모든 후보군을 따라 들어가며 탐색하는 알고리즘입니다.위와 같은 방식으로 한 배열와 특정한 수가 쓰였는지에 대한 배열을 선..
BOJ 2748 피보나치수 2
·
Algorithm/문제풀이
2748번: 피보나치 수 2-문제 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 된다. n=17일때 까지 피보나치 수를 써보면 다음과 같다. 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597 n이 주어졌을 때, n번째 피보나치 수를 구하는 프로그램을 작성하시오. -입력첫째 줄에 n이 주어진다. n은 90보다 작거나 같은 자연수이다.문제풀이기본적인 피보나치수 문제중 하나입니다. 여기서 중요한 점 부분은 "n은 90보다 작거나 같은 자연수이다." ==>( ..
BOJ 1629 곱셈
·
Algorithm/문제풀이
1629번: 곱셈자연수 A를 B번 곱한 수를 알고 싶다. 단 구하려는 수가 매우 커질 수 있으므로 이를 C로 나눈 나머지를 구하는 프로그램을 작성하시오.첫째 줄에 A, B, C가 빈 칸을 사이에 두고 순서대로 주어진다. A, B, C는 모두 2,147,483,647 이하의 자연수이다. 문제 풀기간단하게 for문을 사용해서 풀어서 A를B번 곱한 수를 구한다면 int, long long의 범위를 한참 벗어납니다(A와 B는 각각 대략 20억의 수이므로). 따라서 다른 접근방법을 생각해야 합니다.  주의 해야할 점  정답 코드#include #include #include #include #include #include #include #include #include #include #include #inclu..
Oculus Interaction SDK와 핸드 트래킹을 사용해 레버 기능을 만들어 보자!(One Grab Interactable 사용)
·
Unity/VR
오늘은 Oculus Interaction SDK와 핸드트래킹을 사용해 위아래로 움직일 수 있는 레버 기능을 만들어 보도록 하겠습니다! Meta Developers developers.meta.com ==> 현재 사용하려는 조이스틱은 위 사진처럼 구성이 되어 있습니다.  이제 제가 하려는 것은 레버 머리 부분을 잡고 위아래로 움직이는 기능을 넣고 싶습니다. 간단하게 테스트를 위해 Meta XR Interaction SDK OVR Samples -> Example Scenes-> HandGrabUseExamples 씬 안에 있는 OVRCameraRig 프리펩을 가져옵니다 자 그러면 이제 레버를 손으로 잡고 인터렉션을 하기 위해 위 사진과 같이 적절한 콜라이더와 Rigidbody, Grabbable, Hand..
[Step 9] 동적 계획법
·
Algorithm/코딩테스트_합격자되기_인프런 _스터디
동적 계획법⇒ 복잡한 문제를 단순한 하위 문제로 나눠서 접근하는 방법⇒ 중복 계산을 줄이기 위해, 이전에 구한 해를 활용 이전의 해를 활용해야 효율적인 문제의 조건최적 부분 구조문제의 최적 해결책이 하위 문제의 최적 해결책으로부터 구성되는 경우중복 부분 문제동일한 하위 문제가 여러번 계산 됨 예시 1 : 팩토리얼 예시 2 : 피보나치 수 동적 계획법 적용하는 법 예시 1 : 계단 오르기 ⇒N개의 계단이 존재하고, 한번에 1개 혹은 2개의 계단을 오를 수 있음. 계단을 오르는 방법의 총 수는? 1. 예제 입력으로 출력을 만드는 과정을 직접 손으로 작성2. 과정을 일반화. 이때 최종해를 구하는 과정을, 이전해를 구하는 과정을 통해 나타낼 수 있는지 확인한다.3. 2번의 과정에서 이전해를 구하는 과정이 ..