목록분류 전체보기 (295)
거의 알고리즘 일기장
https://www.acmicpc.net/problem/13306 13306번: 트리 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 트리의 정점의 개수와 질의의 개수를 나타내는 두 정수 N과 Q (1 ≤ N, Q ≤ 200,000)가 주어진다. 다음 N-1개의 줄의 i번째 줄에는 정점 i+1의 부�� www.acmicpc.net 풀이방법 문제가 구하라는 바는 다음과 같다. 1. 간선을 끊어라. 2. 경로가 있는지 확인해라. 이 문제는 간선을 모두 끊으므로, 먼저 간선을 모두 끊어놓고 주어진 물음들을 반대로 실행하면 쉽게 정답을 구할수있다. 코드 #include #include #include #include using namespace std; stack order; stack ans; int ..
https://www.acmicpc.net/problem/1655 1655번: 가운데를 말해요 첫째 줄에는 수빈이가 외치는 정수의 개수 N이 주어진다. N은 1보다 크거나 같고, 100,000보다 작거나 같은 자연수이다. 그 다음 N줄에 걸쳐서 수빈이가 외치는 정수가 차례대로 주어진다. 정수는 -1 www.acmicpc.net 풀이방법 풀이 방법은 간단하다!! 1. BACK과 FOWARD를 multiset의 자료구조로 선언한다. 2. input이 들어왔을때 세가지의 조건에 따라 달리 넣어주면된다. 1. MID값이 비어있을때 2. FOWARD.SIZE >= BACK.SIZE 일때 3. FOWARD.SIZE < BACK.SIZE 일때 3. FOWARD의 맨 뒤의 값과 BACK의 맨앞의 값 그리고 MID의 값..
https://www.acmicpc.net/workbook/view/2052 문제집: N과 M (baekjoon) www.acmicpc.net 풀이방법 이 N과 M의 풀이방식이 다 똑같고 중복이나 오름차순? 같은 추가 옵션들만 추가해주면 됨. 그러므로 N과 M(12) 소스코드를 참고하시길 바란다. 코드 #include #include #include using namespace std; int N, M; vector num; vector answer; bool isVisited[9]; bool cmp(const vector& a, const vector& b) { for (int i = 0; i < M; i++) { if (a[i] == b[i] && i !=M-1) continue; return a[i..
예전에 다들 곰플레이어로 닷지라는 게임을 해본적이 있을것이다. 이 간단한 게임을 AR과 접목시켜 보았다. 플레이 영상 구현기능 1. ARCORE를 이용한 평면 인식 및 터치 시 게임의 맵 생성 2. 공 튀기기 간단하게 ENEMY가 쏜 공이 벽에 닿았을때, 위의 공식에 맞춰 튕겨져 나가게 하였다. 3. 조이스틱 패드를 이용한 조작 https://www.youtube.com/watch?v=S-0muRsfwzk 위의 링크를 참고하였다. 4. 시간마다 달라지는 난이도 설정 시간이 지날때마다 ENEMY가 늘어나게 했고 UI에서 지금 현재 단계를 알수있다. 후기 게임 자체는 간단해 만드는데 오래걸리지 않았는데, AR로 전환하는 과정에서 생각치도 못한 오류들이 계속 생겨서 그걸 해결하는데 힘들었습니다.
동작영상 후기 같이 교육을 듣는 친구들과 함께 공부목적으로 만들기 시작한 게임이다. 사실 이게 처음 시작할때만 하더라도 금방 끝날줄알았다.. 하지만, 동작을 구현할때 원활한 동작을 위해서 다리를 들어주는동작, 자연스럽게 다리가 회전하는 동작, 부드럽게 내려주는 동작, 다리의 컨트롤은 어떻게 할것인지 등등등 생각할거리가 매우 많기도 했고 잔버그가 워낙 많아서 그걸 어느정도 보완하는데도 많은 시간이 필요했다. 결국 완성하긴 했지만, 미숙한 면이 많아 아쉽다.ㅠㅠ
https://www.acmicpc.net/problem/9251 9251번: LCS LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. www.acmicpc.net https://www.acmicpc.net/problem/9252 9252번: LCS 2 LCS(Longest Common Subsequence, 최장 공통 부분 수열)문제는 두 수열이 주어졌을 때, 모두의 부분 수열이 되는 수열 중 가장 긴 것을 찾는 문제이다. 예를 들어, ACAYKP와 CAPCAK의 LCS는 ACAK가 된다. www.acmicpc...
https://www.acmicpc.net/problem/12852 12852번: 1로 만들기 2 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 자연수 N이 주어진다. www.acmicpc.net 풀이방법 1. 연산을 사용하는 횟수의 최솟값을 찾고 2. 1에서 이용한 dp값을 역추적해서 경로를 찾는다. 코드 #include #include #define MAXN 1000000 #define INF 987654321 using namespace std; int dp[MAXN + 1]; int N; void dpInit() { for (int i = 1; i
https://www.acmicpc.net/problem/12738 12738번: 가장 긴 증가하는 부분 수열 3 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 수열 A를 이루고 있는 Ai가 주어진다. (-1,000,000,000 ≤ Ai ≤ 1,000,000,000) www.acmicpc.net 풀이방법 이 문제는 간단하다. 일단 최장 수열을 저장할 vector를 하나 만들었다. (arr이라고 약칭하겠다.) 그리고 두가지 조건을 통해서 arr을 채워가면 된다. 1. 만약 입력받은 숫자가 arr의 끝에 있는 수보다 크면, arr에 추가 2. 입력받은 숫자가 arr의 끝에 있는 수보다 작다면, arr의 값들 중에서 같거나 가장 차이가 적게나는 큰숫자를 찾아 바꿔..
동물들의 움직임, 플레이어의 움직임은 웨이포인트를 사용하여 움직이게 하였다. 최근 듣는 교육에서 6시간 정도의 시간에서 팀을 짜고 그 안에 VR혹은 AR을 이용한 간단한 프로젝트를 완성시키는 활동을 하였는데 그때 만든 프로젝트다. 원래는 동물들을 학대하며 동물원을 도는 모습을 보여주다가 마지막에 동물들이 복수하는? 그런 시나리오를 생각했는데 중간중간 알 수 없는 오류를 고치느라 시간이 부족해서 생각했던 대로 프로젝트가 나오진 않은 것 같다. VR을 끼면 VR컨트롤러에 따라 간단한 이동속도 조절, 잠시 멈추기, 재시작 등의 기능을 사용할수 있는데 그건 영상을 어떻게 찍어야 할지 몰라서 유니티상에서 빌드한 내용만 영상으로 남긴다. 에셋은 무료에셋인 Free Skybox Extended Shader, 5 an..
어제 본 마이다스 아이티의 코딩테스트 후기를 써볼까 한다. 이게 공지사항을 정확히 보지는 못해 어느 정도 선까지 말해야 되는지 모르겠어서 그냥 문제내용말고 느낌 정도만 적어두겠다. 문제난이도 문제 난이도는 문제마다 천차만별이었다. 전반적으로 구현력? 위주의 문제로 기억한다. 특이사항 이외에 특이했던 점이 하나 있었는데 나만 그런지 모르겠는데 주어진 시험환경이 복사 붙여넣기가 안되서 그냥 메모장 코딩하듯이 풀었다. 그러면 그외 idle로 풀고 따라 적으면 되지 않느냐고 생각할 수도 있겠는데 주어진 시험환경이 전체화면으로만 창을 볼수 있어서 그것도 용이하지 않았다. 컴퓨터 두 대를 쓰던가 모니터를 하나 더 썼다면 좋았을것 같았다. 복붙 불가 말고도 나를 괴롭히는 시련이 하나 있었는데, 스터디 카페에서 시험을..