묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨[게임 프로그래머 도약반] DirectX11 입문
애니메이션의 BlendData를 쓰는 과정에 대해서
애니메이션 파트의 ReadSkinData()함수를 통해 blendIndices, blendWeights를 쓰는 과정에서 질문이 있습니다.아래 ReadSkinData() 함수는 보시는 바와같이 사용하는 모든 Mesh를 순회하며 그 Mesh 속에서 연관된 Bone을 또 하나하나 전부 순회하는 과정에서 그 Bone에 영향을 받는 Vertex에 blendIndices, blendWeights를 쓰도록 구성이되어 있는데 그렇다면 서로 다른 Mesh에서 동일한 Bone과 연관되어 있다고하면 똑같은 Vertex를 두번 이상 갱신하게 되는 건가요? 만약 이게 아니라면 애초부터 하나의 Bone이 2개 이상의 Mesh와 연관이 될 수가 없나요?전자가 성립한다면 BlendData가 수치상으로는 문제가 없지만 동일한 값을 할당하는 것을 몇번 더 반복해야되는 경우가 생길수도 있어서 궁금해서 질문 드립니다
-
미해결[게임 프로그래머 도약반] DirectX11 입문
vertex shader, rasterize 질문입니다
vertex shader를 처리할때 _vertexBuffer에 들어있는 꼭짓점을 받아서좌표를 변환하는 과정으로 이해했습니다. ia과정에서 나오는 결과물이 mesh라고 하셨는데이부분에서 약간 혼동이 있는 것 같습니다. 제가 생각한 바로는, IA과정 에서는아직 mesh가 그려지진 않았고, 각 점들과 layout, 그 점들로 무엇을 그릴지에 대한 정보가 있는 상태입니다(삼각형). vertexshader에서 좌표계 처리를 하고rasterize과정에서야 점들끼리 잇고 보간을 합니다.(렌더링 범위 지정) 이후 PS과정에서 shaderResource와 uv값을 이용해서실제 색을 칠하는 과정 (수치적으로)을 거친 후에 output merge과정에서 indexBuffer를 참조하여 backBuffer에 실제 렌더하는 과정을 거친후에 고속 복사를 하여 렌더링을 완료하게됩니다. 해당 렌더링 프로세스를 제가 잘못이해한 것인지 궁금합니다.(결과적으로 IA작업에서, 꼭짓점 뿐만 아니라 꼭짓점 사이의 EDGE에 대한 정보도 이미 전부 가공된 채로 VS에 넘어가는것이었나에 대해 궁금합니다.. mesh는 꼭짓점 사이의 edge도 그려져 있지 않나요?)
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
7-C
http://boj.kr/3c3c09b8b7994f2aa915ac2c4916f166 dfs를 사용하여 visited도 똑같이 적용하여 풀었는데 6%에서 시간초과가 나네요... 큰돌님 코드도 dfs 기반의 코드 같은데 혹시 시간초과가 나는 이유가 있을까요..?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6-N ret=0아니고 1로 초기화 해야되는 이유
가 뭘까요? ㅠㅠhttp://boj.kr/43e4d282dd784a6d9869b0bf2a3eb92e0으로 하면 틀리는데 1로 하면 맞네요
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6-C lo=mx로 안하면 틀리는 이유가 있나요?
lo=1로 하면 테케는 맞는데http://boj.kr/7ca5d79fc6c84d84be2e2cf475201488제출하니까 틀려서 질문 드립니다
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
7-V 문제 질문
안녕하세요 큰돌 선생님문제를 풀다가 막혀서 질문드립니다. 전체적인 로직은 선생님 코드와 비슷한것 같은데 29점에서 막힙니다. http://boj.kr/d71d2395bc9b4b61ad8153b14682dc35 저는 구조체를 만들지 않고 그냥 배열 4개를 만들어서 따로 값을 저장했습니다. 29점이 나오는데, N이 20을 넘어갔을때 런타임 에러에 걸립니다. 인덱스 참조할때 배열을 범위를 넘어가는 부분도 없는것 같고, 0으로 나누거나 그러지도 않았는데 혹시 어떤 부분이 잘못된것일까요?
-
해결됨it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비
코딩 스타일 질문
선생님 안녕하세요! 강의 잘 듣고 있습니다 !! 코딩 스타일에 대해서 질문이 있습니다. 선생님 강의를 보니 map[30][30], ch[30]와 같이 선언을 주로 하시는것 같습니다. 하지만 문제에서는 정점의 수 범위가 최대 20이라서 30까지 필요해보이지는 않아서요.제가 아직 코딩테스트를 한번도 본 적이 없어서 잘 모릅니다. 회사를 다니면서 최대한 효율적으로 코드를 작성하다보니 요구사항에 맞는 크기로 사용하는 버릇이 있네요. 문제에 맞는 범위의 배열을 선언하고, 그래프 정점이 1 -> 2로 간다면, 선생님은 인덱스 번호를 1로 맞추시는데, 0은 사용하지 않고 낭비됩니다. 이런 사항은 코딩테스트에서 신경쓰지 않아도 될까요? 단순히 문제 해결을 위해 위 사항쯤은 무시하고 편하게 코딩해도 되는지 궁금합니다 !!#include <iostream> #include <vector> using namespace std; static vector<vector<int>> graph; static vector<bool> visited; static int minCost = INT_MAX; int N; void DFS(int v = 0, int cost = 0) { // v에 방문 visited[v] = true; // 지금까지 누적된 비용이 min보다 높다면 리턴 if (cost > minCost) return; // 목적징에 도착 if (v == N - 1) minCost = minCost > cost ? cost : minCost; else for (int i = 0; i < N; ++i) if (!visited[i] && graph[v][i] >= 0) { // v에 방문하기 DFS(i, cost + graph[v][i]); visited[i] = false; } } int main() { int M; scanf_s("%d %d", &N, &M); graph = vector<vector<int>>(N, vector<int>(N, -1)); visited = vector<bool>(N, false); int f, t, c; // from, to, cost for (int i = 0; i < M; ++i) { scanf_s("%d %d %d", &f, &t, &c); graph[f - 1][t - 1] = c; } DFS(); printf("%d", minCost); }
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6주차 개념강의 2776번 문제 질문있습니다.
int check(int temp, vector<int> &v) // vector<int> v 로 쓸 때다른 부분은 블로그에 있는 코드와 동일하게 작성하고check 함수의 매개변수 부분에서 vector<int> &v를 vector<int> v로 바꿔서 쓰면답은 동일하게 나오는데 시간 초과가 나와서 틀리게 됩니다. 왜 시간이 더 길어지는지 알고 싶습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-A 조합으로 풀었을 때 어디가 틀렸는지 잘 모르겠습니다.
#include <bits/stdc++.h> using namespace std; // 난쟁이 9명 int dwarf[9]; int main() { int sum = 0; // 입력받기 & 총 합 구하기 for (int i = 0; i < 9; i++) { cin >> dwarf[i]; sum += dwarf[i]; } // 7난쟁이가 아닌 2명의 합 int remain = sum - 100; // 배열에서 2명의 합이 remain인지 확인하기 for(int i = 0; i < 8; i++) for(int j = i + 1; j < 9; j++) if (remain == (dwarf[i] + dwarf[j])) { dwarf[i] = INT32_MAX; dwarf[j] = INT32_MAX; break; } // 정렬하기 sort(dwarf, dwarf + 9); // 출력 for (int i = 0; i < 7; i++) cout << dwarf[i] << '\n'; }난쟁이가 아닌 얘들에게 INTMAX 값을 넣고 SORT 시켰는데왜 이 코드가 계속 틀렸다고 나오는지 잘 모르겠습니다
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
공부 방법 관련 질문입니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 선생님!강의를 듣고있는데 드디어 문제의 강의를 들을 차례인데먼저 제가 풀어보고 듣는게 나은지 아니면 그냥 일단 강의를 듣는지 잘 모르겠어서 질문 남겨요! 그리고 강의 교안을 혼자 계속 공부를 따로 해야하는지 부분도 궁금합니다!
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
제가 구현한 방식이 분할 정복이 맞을까요?
http://boj.kr/950a82ed51544ab2afcab679ab16ca02 안녕하세요 강사님 제가 작성한 코드인데 강사님이 설명해주신 부분과 차이가 있는 부분이 있어서 질문올립니다. 첫 번째 질문저는 재귀함수를 작성할 때 하위함수를 무조건 호출하고, 가장 하위함수의 결과부터 시작해서 올라오는 방식으로 코드를 짰습니다.이런 방식을 분할 정복이라고 할 수 있는건가요? 두 번째 질문위의 방식으로 코드를 작성하기 위해서 시작 지점을 범위의 우측 하단으로 설정했습니다. 그래서 맨 처음 재귀함수를 호출할 때, N을 시작 지점으로 입력받게 됩니다. 이 부분은 잘 처리한건가요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6-I while문 내부
while(lo<=hi){ ll mid=(lo+hi)/2; if(check(mid)){ ret=mid; hi=mid-1; }else lo=mid+1; } 왜 하던것 처럼 이렇게 하면 안되나요? ㅠㅠret =mid;lo=mid+1;else hi=mid-1; 이렇게 해야 되네요
-
해결됨홍정모의 따라하며 배우는 C++
함수 호출 로그에 대해 질문 있습니다.
지금 전문가를 위한 C++ (개정판 3판)으로 공부하고 있습니다. 이 부분에서 오류가 발생해서 구글 검색을 해봤는데도 해결을 하지 못했습니다.이 예제를 실행시키려면 어떠한 문법을 써야 하나요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-N c++과 Python에서 동일 코드인데 에러가 나는 이유
안녕하세요! 예전에 동일 문제를 파이썬으로 풀다가, c++로 풀어봤는데, 왜 해당 파이썬코드는 정답 으로 인식되는데, 동일하게 짠 c++코드는 오답으로 인식되는지 궁금합니다. def pow_mod(a, b, c): if b == 1: return a % c n = pow_mod(a, b//2, c) if b % 2: return (n * n * a) % c else: return (n * n) % c A, B, C = map(int, input().split()) result = pow_mod(A, B, C) print(result)#include <bits/stdc++.h> using namespace std; typedef long long ll; ll A, B, C; ll tmp, ret; ll calc(ll a, ll b, ll c){ if (b == 1) return a % c; tmp = calc(a, b/2, c); // if b is odd number => only multiple a once if (b % 2) { return (tmp * tmp * a) % c; } else { return (tmp * tmp) % c; } } int main(){ cin >> A >> B >> C; ret = calc(A, B, C); cout << ret << '\n'; return 0; }어느 것이 반례인지 감이 안옵니다. 혹시 알 수 있는지, 왜 발생하는지 궁금합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6-A와 비교해서 6-B의 while 문 내부 궁금한 점
while(lo <= hi){int mid = (lo + hi) / 2;if(check(mid)){hi = mid - 1;ret = mid;}else lo = mid + 1;}여기서 ret을 찾는 과정(ret=mid)이 조건을 만족하는 최소의 ret을 찾는 과정인가요? ret=min(ret,mid) 필요 없나요?사실 잘 이해가 안되네요ㅠㅠ6-A 는 ret=min(ret,mid)이런 걸 했는데 여기는 없어서요
-
해결됨홍정모의 따라하며 배우는 C++
학원 선생님이 주석을 각주라고 말하셨는데 이것도 맞는 말인가요?
게임학원에 다니면서 언리얼과 프로그래밍 수업을 듣고 있습니다.제가 묻고싶은 것은 학원 선생님이 주석을 각주라고 하셨는데 이 표현도 맞는말인가요?
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
꼭 Item() 생성자를 수정해야 하나요?
단순히 Weapon() 안에서 itemType = IT_Weapon;을 써주면 안되나요?Weapon::Weapon(){ switch (_rarity) { case IR_Normal: _damage = 1 + rand() % 5; break; case IR_Rare: _damage = 1 + rand() % 7; break; case IR_Unique: _damage = 1 + rand() % 10; break; } itemType = IT_Weapon;}
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
반례가 궁금합니다.
클래식한 방법으로도 풀어보고 싶어서 완전탐색으로만 풀어봤습니다.http://boj.kr/4a9402fdc35849379ffcb1f72c8c1016우선 변수명을 대충 지어서 설명 드리자면v는 2차원벡터로 데이터 저장하고 combi는 조합을 구하는 벡터입니다. 조합을 1개부터 N개까지 다 구하고 check하는 함수로 보내는 로직입니다.vmin은 영양소 최소값 모아둔 벡터입니다. ans는 식품의 idx를 저장하는 벡터입니다. value는 현재 최저 가격입니다.check하는 함수에서 value와 price를 비교해서 (이전 최저가격과 현재 측정가격) 같으면 사전순 정렬을 위해 ans와 combi 벡터를 비교해서 바꿔주도록 설정했습니다만.. 80%부분에서 계속 틀려서 답답합니다 ㅠㅠ
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
5-L 111000이랑 000111은 결과 같지만 두번 계산 하는건가요
네5-K는 어려워서 아무도 질문이 없나 보네요 ㅠㅠ
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
5-G while(1)문 내부를 이렇게 하면 왜 안될까요?
if(hi==p)break; if(sum<n)sum+=a[hi++]; else sum-=a[lo++]; if(sum==n)ret++;왜 순서를 바꾸면 오류가 날까요?