묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[게임 프로그래머 도약반] DirectX11 입문
Animation 보간 관련 질문드립니다
애니메이션 보간 결과물이 너무 어색해 생각해보니각 키프레임 데이터에서 꺼내온 SRT를 보간 한 후에애니메이션 트랜스폼을 결정해줘야 의도처럼 되더라구요.근데 애니메이션의 Transform을 SRV로 만들어 셰이더로 던져줘서 보간 계산을 할 수 있는 적절한 위치를 모르겠습니다.셰이더에서 하기에는, BONE INDEX를 처음부터 돌면서 현재 프레임의 Transform을 구하는 동일한 과정을 vertex마다 계속 하게되고,CPU에서 처리하기에는 텍스처를 사용하는 의미가 퇴색되는 것 같아 질문드립니다. Transform을 Texture화 하면서 정확한 보간을 할 수 있는 방법이 있나요
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-J 테케는 다 맞는데 틀렸다고 나옵니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요.풀이를 보지 않고 직접 풀었는데,0을 만나는 경우는 이동거리를 증가시키지 않는 형태로 하여 구현하였습니다.테스트 케이스는 다 통과하는데 제출하면 틀렸다고 나오는데 반례를 못찾겠습니다. 기존에 있는 다른 분이 올리신 비슷한 질문에 있는 반례도 통과를 해서 질문을 올리게 되었습니다. 감사합니다.http://boj.kr/f7e741dc7e5145bc9ea65dc83639e531
-
해결됨홍정모의 따라하며 배우는 C++
(6.9) 포인터 주소를 찍어보는 구간에서 질문이 하나 생겼어요.
안녕하세요! 6.9강의에서 포인터 주소를 하나하나 찍어보는 구간에서 질문이 하나가 생겼습니다. #include <iostream> using namespace std; int main() { int i = 2; int *ptr_i = &i; double d = 3.14; double *ptr_d = &d; cout << "int형 포인터 ptr_i의 크기는 " << sizeof(ptr_i) << endl; cout << "ptr_i가 참조하는 변수 자체의 크기는 " << sizeof(*ptr_i) << endl; cout << "double형 포인터 ptr_d의 크기는 " << sizeof(ptr_d) << endl; cout << endl; cout << "------이하 ptr_i------" << endl; cout << "-1번째 : " << uintptr_t(ptr_i - 1) << endl; cout << "0번째 : " << uintptr_t(ptr_i) << endl; cout << "1번째 : " << uintptr_t(ptr_i + 1) << endl; cout << "2번째 : " << uintptr_t(ptr_i + 2) << endl; cout << endl; cout << "------이하 ptr_d------" << endl; cout << "-1번째 : " << uintptr_t(ptr_d - 1) << endl; cout << "0번째 : " << uintptr_t(ptr_d) << endl; cout << "1번째 : " << uintptr_t(ptr_d + 1) << endl; cout << "2번째 : " << uintptr_t(ptr_d + 2) << endl; } 결과값은 아래와 같이 나왔습니다.int형 포인터 ptr_i의 크기는 8ptr_i가 참조하는 변수 자체의 크기는 4double형 포인터 ptr_d의 크기는 8 ------이하 ptr_i-------1번째 : 61244665680번째 : 61244665721번째 : 61244665762번째 : 6124466580 ------이하 ptr_d-------1번째 : 61244665440번째 : 61244665521번째 : 61244665602번째 : 6124466568 포인터는 결국 '주소를 담고있는' 변수에 지나지 않잖아요?x64 환경에서 포인터의 크기는 어떤 자료형을 가리키던 상관없이 8바이트인데, 그렇다면 ptr_i에서 -1, +1 연산을 수행하면 결과값들이 8씩 차이가 나야하는게 맞지않나요? 제가 이해한 바로는 (물론 잘못 이해하고 있겠지만..) 포인터는 변수니까, 해당 포인터를 담고있는 또 다른 메모리 공간이 있을거란 생각이 들어서요.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
5-J 강의 질문
안녕하세요 선생님 양질의 코드 매번 감사합니다.강의를 들으며 살짝 헷갈리는 부분이 있는데요, 가장 먼 미래에 참조되는것을 swap 하는 알고리즘이라 하셨는데 이 가장 먼 미래라는게 상대적으로 먼 미래를 의미하는건가요? 예를들어 콘센트에 2번, 3번이 들어가 있을때앞으로 나올 2번과 3번이 둘다 있는경우 이 두가지 중 더 멀리있는 거랑 swap 하는 건가요? 추가로 16번 라인에서 j 의 시작이 i + 1이 아닌 i 가 아닌지 생각이 듭니다.만약 콘센트 2개 공간이 있고 2, 3, 1, 2, 3 순서로 사용을 한다고 할때, 먼저 2와 3이 콘센트에 들어가고 그다음 1이 들어갈때 이미 콘센트 공간이 가득차있으므로 2와 3중에 더 멀리 있는번호를 swap 하는건데 만약 i가 아닌 i + 1 부터 확인하게 된다면 1부터 확인하는게 아니고 2부터 확인하게 되는게 아닌가요? 그럼 한칸을 빼먹는거 같은데 이 부분이 좀 헷갈립니다.http://boj.kr/680d6abc7e004d7886939b2513c31723
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-A 치킨집과 집과의 거리 계산 로직 문의
안녕하세요. 강사님,강사님의 코딩테스트 강의 열심히 듣고 있습니다. 오늘 문제는 다소 어렵네요..치킨집과 집 과의 거리 계산 로직이 home 리스트 순서와 chicken 리스트 순서대로 구하던데, 순차적으로 index를 부여받아서 순차적으로 dist 구하면 되는건가요?? for(pair<int, int> home : _home){ int _min = 987654321; for(int ch : cList){ int _dist = abs(home.first - chicken[ch].first) + abs(home.second - chicken[ch].second); min = min(min, _dist); }저는 거리 계산도 bfs로 풀어야 하는줄 알았는데, 어떤 조건일 때 bfs로 안풀어도 되는지 궁금해요
-
미해결[게임 프로그래머 도약반] DirectX11 입문
비쥬얼스튜디오에서 디버그할땐 실행되는대 exe파일로는 실행이안되요
1.실행파일로 시작했을때 오류2.비쥬얼스튜디오에서 디버그 했을때 모습제가 잘못한건지 보려고 선생님 프레임워크 실행해봐도 똑같은 문제가 납니다장치 생성하는 라인인거같은대 왜다른걸까요..?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-K 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.안녕하세요. 저는 자바로만 알고리즘을 풀어온 수강생입니다.일단 저의 코드는 아래 링크와 같습니다.http://boj.kr/c098c62b8ee14b3b88f6058b7d055a29코드를 잘 보시면 4번째 줄에 cnt 배열의 길이를 26으로 설정해두었음에도 통과가 되었습니다.원래대로라면 배열 길이가 200(최소 91)은 되어야대문자 Z까지 다 카운트할 수 있을텐데 제 부주의로 26으로 해버렸습니다이렇게 되면 for(char a : s) cnt[a - 'A']++;로 해줘야 할 줄 알았는데 그냥 통과가 되버렸네요.chatgpt에게 물어본 바로는 그러나 C++에서는 배열의 인덱스가 음수가 아니라면, 범위를 벗어나더라도 컴파일러는 해당 인덱스를 양의 정수로 간주하여 메모리를 접근하려고 시도합니다. 이런 상황에서는 예상치 못한 동작이 발생할 수 있으며, 이는 정의되지 않은 동작으로 분류됩니다. 따라서 코드가 정상적으로 동작하는 것은 운이 좋게 동작하는 경우일 수 있습니다만, 이는 올바른 코드 작성 방법이 아닙니다.자바였으면 ArrayIndexOfBound를 내뿜으며 컴파일오류가 나왔을텐데 통과가 되었다고 해서 약간 당황스럽네요혹시 이게 어떻게 된건지 설명해주실 수 있으실까요?만약을 위해 공유소스 외에도 에러문(?)이 나와있는 링크도 남깁니다.https://www.acmicpc.net/source/65705843감사합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
cin에 관한 질문
강의 잘 듣고 있습니다.while(scanf...)식으로 입력을 계속 받는 형태의 문제에서 cin >>입력을 쓸 수 있는 방법에 대해 궁금합니다. 예전에 풀었던 문제중엔 됐던 것도 있고 아닌것도 있었는데 정확한 기준을 모르겠네요. cin으로 입력받을 수 있는 방법이랑 scanf가 더 효율적인거라면 그 이유도 궁금합니다.
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
벡터 erase 관련 질문입니다
벡터 v.erase(it)에서인자로 it를 넘겨주는데래퍼런스, 포인터로 넘겨주는것도아닌데넘겨준 it의 myproxy 를 null 값으로 바꾼건 진짜 it의 myporxy값과 상관없지안나요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
map 자료구조를 이용한 중복된 요소 제거하는 방법에서 질문있습니다!
#include <bits/stdc++.h> using namespace std; map<int, int> mp; int main() { vector<int> a = {1,2,2,3,3}; // for (int i : a) // { // if (mp[i]) // { // continue; // } // else // { // mp[i] = 1; // } // } for (int i : a) mp[i] = 1; vector<int> ret; for (auto i : mp) { ret.push_back(i.first); } for (int i : ret) { cout << i << "\n"; } } 이런식으로 처음 a 백터의 값들을 mp에 넣어줄 때 굳이 mp안에 있는지 확인하고 있으면 continue하고 없으면 mp[i] = 1;를 해주지 않고 그냥 a백터를 한 바퀴 순회하면서 전체적으로 다 넣어 줘도 되지 않나요? map 자료구조의 키값을 중복되지 않게 갖는다는 특징을 이용해서 중복된 요소를 제거를 하는 것처럼 어차피 한 바퀴 돌면서 중복되는 값들을 키값에 넣으려고 해도 중복되서 추가가 되지 않을거같은데 혹시 continue를 사용해서 코드를 짜는 이유가 따로 있을까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
8-R 다익스트라 2번 사용 풀이 질문입니다.
강사님 안녕하세요8-R 풀이에서 다익스트라 2번 사용하여 풀이를 해주셨는데요.강의 영상 1:54 부근에서 간선간 왔다갔다 할 수 있다고, 양방향 간선인 것 처럼 말씀해주셨는데.문제에서는 아래와 같이 간선은 단방향이고, X 지점까지 가는 경로와 돌아오는 경로가 다를 수 있다고 되어있습니다.각각의 학생들은 파티에 참석하기 위해 걸어가서 다시 그들의 마을로 돌아와야 한다. 하지만 이 학생들은 워낙 게을러서 최단 시간에 오고 가기를 원한다.이 도로들은 단방향이기 때문에 아마 그들이 오고 가는 길이 다를지도 모른다. N명의 학생들 중 오고 가는데 가장 많은 시간을 소비하는 학생은 누구일지 구하여라.X -> 각 노드 까지 가는 최단거리는 다익스트라로 구하는 것은 이해했는데 ,각 노드 -> X 까지 가는 경로를 구하는 방법을, 경로 가중치는 그대로 두고 단순히 간선 방향을 반대로 하여 다익스트라로 풀이하는 설명이 잘 이해가 되지 않습니다.
-
미해결[게임 프로그래머 도약반] DirectX11 입문
선행 강의 수강 질문
안녕하세요.이번에 신규가입 얼리버드 25% 할인으로 DirectX11 강의를 구매해서 수강 중인 학생입니다.강의를 들어보니 Windows API와 STL 부터 선행이 필요하다고 생각이 들어[게임 프로그래머 입문 올인원] 강의도 수강하려고 했는데 할인 기간이 종료되었더군요...혹시 [게임 프로그래머 입문 올인원] 할인쿠폰을 받아 수강할 수는 없는 지 문의드립니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
5 - X 파라미터로 array를 받을 때 질문
안녕하세요 강사님 ㅎㅎhttp://boj.kr/3ca01eafe71e4b31831368e71ae8e336해당 문제에서 cctv를 돌리는 로직이나 완탐을 하는 로직 같은 경우에 문제가 없어보이는데 go 메서드의 인자로 배열을 받는 것이 문제가 있는 것 같아 질문드립니다.디버깅 해보았을 때, 인자로 받는 배열이 매번 다음 go 재귀로 넘어가기 전에 memcpy를 하기때문에 그 전 go 실행이 다음 go 내부에서 사용하는 배열에 영향을 주지 않을 거라고 생각했는데, 카메라가 2개 이상 있는 케이스부터는 깊은 복사가 되지 않고 참조하는 것처럼 실행이 되어서 어떤 것이 문제일지 질문드립니다.
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
교안 내용 및 char 초기화에 대한 질문입니다.
안녕하세요 강사님 강의 너무 유용하게 보고 있습니다.교안 내용 관련 질문도 있는데 0주차에 관련 내용 수업이 없어서 여기에 같이 적어봅니다.https://www.acmicpc.net/ceinfo/65628884질문 1. 저 배열 초기화가 왜 문제인지 교안 내용만으로 이해가 어려워서 추가 질문드립니다. 저는 선언할 때 제외하곤 {0,}을 사용을 안하는데 아래에서 a[5] = {0,}; 이 부분이 혼동의 여지가 있어 문제라는건가요? 질문 2. 강사님 코드를 따라쳐보는 연습을 하고 있는데 char chMid; 이렇게 선언하니 아래 if(chMid)부분에서 애당초 0이 아닌 쓰레기값이 있어 문제가 되어 {}초기화를 해줬습니다. VS 2015를 사용중인데 구버전이라 초기화 지원이 안되는 걸까요? 아니면 다른 이유가 있다면 알려주시면 감사할 것 같습니다. PS. 가끔 드립치시는거 재밌습니다 ㅎㅎ
-
미해결[게임 프로그래머 도약반] DirectX11 입문
Part1: C++ 프로그래밍 입문 강의듣고 넘어왔습니다
질문 1. [게임 프로그래머 도약반] DirectX11 입문 들어 가기 전 혹시 미리 공부해가야 되는 것 이 있을까요?질문 2. 다이렉트x가 처음이라면 물방울책 구매해서 섹션 11부터 시작하는게 좋을까요?
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
Windows API SceneManager 동적할당 부분
switch (sceneType) { case SceneType::DevScene: newScene = new DevScene(); break; case SceneType::GameScene: newScene = new GameScene(); break; } sceneType별로 동적할당을 하는 부분 같은데,new 부분에 밑줄이 뜨는 이유가 뭘까요?GameScene부분과 DevScene 부분 상속 처리는 다 했습니다
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
next_permutation을 사용하면서 만약에 n개 중에서 n-2개의 값을 뺸다고 했을 때 중복이 발생하지 않도록 할 수도 있나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.next_permutation을 사용하면서 만약에 n개 중에서 n-2개의 값을 뺸다고 했을 때 중복이 발생하지 않도록 할 수도 있나요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
투포인터 시간복잡도
http://boj.kr/3e78cb0c919942b99e839ea6eb90dfa6 해당 코드에서 투포인터를 사용시 시간복잡도가n log n(퀵 sort) + n (while 문) 으로 제가 생각을 해봤는데 맞을까요??
-
미해결홍정모의 따라하며 배우는 C++
4.2 29분 48초
안녕하세요 교수님. extern 설명하실 때, 초보자 중에 include로 cpp파일을 가져오는 사람도 있다 그러셨는데, 혹시 이런 방식으로 가져오면 안 좋은 방식인 건가요? 혹시 그렇다면 이유가 있나요??
-
미해결홍정모의 따라하며 배우는 C++
[0.4.0] Clean Solution 후 Starting Without Debugging 시 자동으로 Build가 됩니다
Debug / Release 시Build 하는 안내창이 안나오고 바로 빌드 후 실행됩니다!Solution Clean 된 상태는 확인했습니다. 설정을 잘못 한걸까요 ㅠㅠ