안녕하세요. 큰돌 강사님, 문제를 풀다가 질문이 생겼습니다. 15683번 "감시" 문제인데요. 이 문제를 저는 아래 방식대로 풀이했습니다. http://boj.kr/7d19fc1e97a44902a3056cd87636f863 cctv(vector)에 번호와 위치를 저장합니다. dfs로 각 방향을 모두 정리했습니다. 각각 정해진 dir 방향대로 사각지대의 범위를 지정했습니다. 3-1. ch 함수에서 a 배열을 temp로 복사 3-2. 각각 cctv 별로 temp 색칠 예제에 나와있는 보기는 모두 정답 입니다만, 문제를 제출하면 런타임 에러가 뜹니다. 이유를 도저히 못 찾겠습니다. 어떤게 문제인지 확인해주시면 감사하겠습니다. ps. 점점 날씨가 쌀쌀해지네요. 감기조심하세요!
안녕하세요 큰돌님, 아래는 제가 강의 보고 코드를 그대로 구현했는데, 백준에 통과를 못하는 이유를 알 수 있을까요? ㅜㅜ 아무리 찾아보고 디버깅 해봐도 예제 문제 4,5번에 오답이 뜹니다. https://www.acmicpc.net/source/67562965 그리고 추가 질문 있습니다.. 이전 강사님 영상에는 dfs 하실때 보통 dfs 함수내에 visited을 정의를 하셨는데, 이번 영상에는 dfs 에 visited를 정의를 안하신 이유도 궁금합니다, 혹시 이전 영상들처럼 dfs에 visited[y][x] = 1 걸어도 문제 풀이가 가능한지 여쭤드리고 싶습니다, 그리고 이번 영상에 다르게 하신 점도 이유도 알고 싶습니다 ㅎㅎ 미리 감사합니다!
[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
static UserManager* GetInstance()//↗ { static UserManager um;//↗, 전역 객체 선언 return &um; } 이 부분에서 static UserManager um;//↗, 전역 객체 선언 static UserManager* GetInstance()//↗ { return &um; } 이렇게 하니까 1개의 확인할 수 없는 외부 참조입니다. 라는 링크 오류가 발생하네요. 왜 그런지 궁금한데 혹시 알 수 있을까요?
1분 50초 쯤에 SwapChain으로 고속 복사가 발생한다고 말씀 해주셨는데 검색을 해서 자료를 찾아보면 DXGI_SWAP_EFFECT_FLIP_DISCARD대신에 DXGI_SWAP_EFFECT_FLIP_DISCARD를 통해서 스왑체인을 만드신 이유가 궁금합니다. 찾아보니까 전자의 경우 말 그대로 플리핑이 일어나서 복사가 필요없고 후자의 경우 복사가 발생하는 정도까지 얕게 파악을 했는데 루키스님의 DX를 공부할 때 숲을 보는 느낌으로 '그냥' 후자를 사용하신건지 궁금합니다
PixelShader 구간에서 Texture를 Sampling 해주는 과정에서 질문이 있습니다. 예를들어 Quad(사각형)을 렌더링하는 경우 Quad의 각 정점4개에 Texture의 양 끝 UV좌표들 (0, 0), (1, 0), (0, 1), (1, 1)을 대응시켜 Shader에 넣어준다고 치면, 저는 이 Quad를 이루고 있는 Vertex의 수만큼 VetexShader, PixelShader들을 통해서 렌더링이 된다고 알고 있었습니다. 하지만 처음에 넣어준 정점 4개의 부분 말고도 그 4개의 정점 사이사이들(ex)(0, 0.3) or (0.4, 0.8))에 있는 VertexBuffer에 넣어주지 않은 정점도 다 Texture의 UV와 일치하게 렌더링 되더군요. 파이프라인에서 VertexBuffer에 넣어주지 않은 정점까지 Shader 작업을 하진 않을거 같아서 원래 알고 있던대로 정점의 개수만큼 파이프라인이 돌아간다면 이걸 제가 알고있던 개념에 적용시켜 생각해봤을때 Vertex의 개수에 맞게 Shader렌더링이 4회 되지만 그 내부의 PixelShader 부분에서 정점의 UV좌표들 사이사이를 매꿔주는 부분이 존재하고 이로인해 각 정점들뿐만 아니라 그 사이사이의 빈 곳들도 알맞게 렌더링이 됬다 라고 생각이 되는데 이게 맞을까요? 만 약 제 생각이 잘못됬다면 어떻게 넣어준 4개의 UV좌표만을 가지고 Texture를 전부 Sampling하나요?
http://boj.kr/34af1033b33c4392a7ea90529d920901 while(scanf("%d", &n) != EOF) 로 코드를 만들었을땐 한참 exe 파일을 찾을 수 없다고 나오다가 while(cin >> n)로 변경하니까 정상 작동 되는데 어떤게 문제였을까요? 질문글 읽어주셔서 감사합니다!
[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
게임에서는 60 FPS 정도는 지원을 해줘야 부드러운 화면 처리가 가능하고 60 FPS를 지원하기 위해 게임 루프를 이용해서 1초에 60번 화면 갱신을 해줘야 되기 때문에 루프를 블로킹하지 않는 비동기 API 위주로 대부분의 기능을 구현해야 되는게 맞는 것인지요? 게임 루프가 실행될 때 Input > Update > Render 라는 큰 흐름은 유지되어야 될텐데 만약 Input이 발생할 시점에 Update나 Render가 실행되고 있다면 Input에서 발생된 데이터는 별도의 자료구조에 담겨있다가 다음 루프에서 Input 데이터를 가져와서 처리하는 형식으로 진행되는게 맞는걸까요? 이벤트 루프라던지 게임루프와 같은 것에 대한 개념이 부족한거 같아 질문드립니다.
오늘 DepthStencil을 통해 오브젝트의 깊이를 판정해서 앞에 있는게 뒤에있는것을 가리면서 그리는 방법을 배웠습니다 그런데 궁금한점이 OutputMerge 단계에서 이 정해준 DepthStencilView의 옵션을 통해 랜더링이 된다고 지정만해주고 앞에 있는 물체가 뒤에 있는 물체를 가려준다는 알고리즘은 넣지 않은거 같은데 자동으로 잘 가려 주더군요 이런건 DX 내부 파이프라인에서 알아서 해결해주는 부분인건가요? 만약 그렇다면 오브젝트마다 주어진 Transform 데이터와 카메라의 Transform, View, Projection 데이터를 통해 파이프라인에서 0~1 사이의 깊이값을 각 픽셀마다 매핑해놨다가 그려주는 방식을 취하는 건가요?
if(y==0&&x==m-1){ if(k==visited[y][x])return 1; return 0; } 이렇게 되는데 if(k==visited[y][x]){ if(y==0&&x==m-1) } 이렇게 해도 결과 같던데 이런 관점은 안 좋나요? 상관없나요? 그리고 y==0&&x==m-1&&k==visited[y][x]이렇게 하면 왜 결과가 0으로 나올까요?
시작부터 3개 고르는 데에서 막혔는데 vector<pair<int,int>>v 만들어서 i,j,k3개 고르는 연구소 문제 처럼 하려다 안돼서 포기하고 visited[]=1; go(); visited[]=0; 이런 것 만 봐서 visited[]=1이랑 go를 합치는건 생각도 못했는데 문제가 다양한 만큼 틀을 배우지만 틀에 얽매이지 않는 이 모순 정말 자유롭게? 다양하게? 생각해야 알고리즘 풀 수 있네요... 먼저 풀이 논리?를 적고 디테일 하게 함수를 채워야 되나봐요
const int num_rows{3}, num_columns{5}; int array[num_rows][num_columns] = { {1,2,3,4,5}, {6,7,8,9,10}, {11,12,13,14,15} }; 이렇게 행렬의 열과 행을 const로 상수 처리를 해버리면 컴파일에러가 발생하지 않는데 이"const"라는 키워드를 빼버리면 열과 행의 수가 변함으로 인해 메모리 공간을 할당을 못해서 컴파일 에러가 발생하는 건가요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 선생님, http://boj.kr/a982837cbe674880af718ecd4566f9f5 이렇게 풀었는데, 예제는 다 맞게 나오는데 혹시 제가 놓친 테스트케이스가 있을까요? 아니면 다른 부분이 틀렸을까요? 감사합니다.