inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

173만명의 커뮤니티!! 함께 토론해봐요.

매크로 함수를 쓴 이유

해결됨

CUDA 프로그래밍 (2) - C/C++/GPU 병렬 컴퓨팅 - 벡터 vector 더하기

안녕하세요! 좋은 강의 잘 듣고 있습니다. common.cpp 코드 중에서 ELAPSED_TIME_BEGIN(N)과 ELAPSED_TIME_BEGIN(N)을 매크로 함수로 정의한 이유가 무었인지요? CUDA_CHECK_ERROR() 함수는 __FILE__과 __LINE__ 때문에 매크로 함수로 정의하신 걸로 이해합니다만, 시간 측정 함수들을 매크로함수로 정의하신 이유는 잘 이해되지 않습니다. 답변 부탁드립니다. 감사합니다.

  • c
  • c++
  • cuda
  • gpu
  • 병렬-처리
Dong Chan Park 댓글 1 좋아요 0 조회수 327

4-A 오답 관련 질문입니다. (to_string 사용 시)

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 강의 잘 듣고 있습니다!! 해당 문제를 푸는데, 이해가 되지 않는 현상이 있어 질문드려요 비트마스킹으로 조합을 획득하여 이를 다시 순번으로 복원하는 과정에서 ret += to_string(j+1); 로 하니 오답이 발생했습니다. 무엇이 문제일지 전혀 감을 못잡다가.., ret += (char(j+1) +'0'); 으로 해주니 정답 처리가 되었는데요 그 이유가 무엇일지 궁금합니다. 감사합니다. 전체 코드 >> #include <bits/stdc++.h> using namespace std; int N; int mp, mf, ms, mv; vector<vector<int>> m; int main() { cin >> N; cin >> mp >> mf >> ms >> mv; m = vector<vector<int>>(N, vector<int>(5, 0)); for (int i = 0; i < N; ++i) { for (int j = 0; j < 5; ++j) { cin >> m[i][j]; } } /* 0000000: 0 0000001: 1 0000010: 2 0000011: 3 ... */ int min_C = 500 * 200; vector<string> ans; for (int i = 0; i < (1 << N); ++i) { int sum_p = 0, sum_f = 0, sum_s = 0, sum_v = 0, sum_c = 0; for (int j = 0; j < N; ++j) { // 비트 마스킹을 통한 조합 combination 획득 if (i & (1 << j)) { sum_p += m[j][0]; sum_f += m[j][1]; sum_s += m[j][2]; sum_v += m[j][3]; sum_c += m[j][4]; } } if (sum_p >= mp && sum_f >= mf && sum_s >= ms && sum_v >= mv) { if (min_C > sum_c) { min_C = sum_c; string ret = ""; for (int j = 0; j < N; ++j) { if (i & (1 << j)) { // ret += to_string(j+1); << 오답 ret += (char(j + 1) + '0'); // << 이렇게 해주니 비로소 정답 } } ans = {ret}; } else if (min_C == sum_c) { string ret = ""; for (int j = 0; j < N; ++j) { if (i & (1 << j)) { // ret += to_string(j+1); << 오답 ret += (char(j + 1) + '0'); // << 이렇게 해주니 비로소 정답 } } ans.push_back(ret); } } } if (ans.empty()) cout << -1; else { cout << min_C << "\n"; sort(ans.begin(), ans.end()); for (char s : ans[0]) { cout << int(s - '0') << " "; } } return 0; }

  • c++
  • 코딩-테스트
윽쓰욱스 댓글 1 좋아요 0 조회수 223

1-M 질문 드립니다!

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

스택 말고 vector를 이용해서 이렇게 풀었는데 꼭 스택을 사용 해야 하는 건가요?? #include <iostream> #include <vector> using namespace std; int n; int cnt = 0; int main() { cin >> n; for (int i = 0; i < n; i++) { string s; cin >> s; vector<char> arr; for (int j = 0; j < s.length(); j++) { if (arr.empty() || arr.back() != s[j]) { arr.push_back(s[j]); } else { arr.pop_back(); } } if (arr.empty()) cnt++; } cout << cnt; return 0; }

  • c++
  • 코딩-테스트
dkswhdgur1209 댓글 1 좋아요 0 조회수 245

1주차 개념#7에서 재귀함수의 시간복잡도를 구할 때 메인 로직은 어떤 기준으로 결정하는건가요?

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

안녕하세요. 재귀함수의 시간복잡도를 구할 때 (메인로직)*(함수호출횟수)라고 알려주셨는데, 여기에서 메인 로직은 어떤 기준으로 결정되는건가요? 감사합니다!

  • c++
  • 코딩-테스트
박수민 댓글 2 좋아요 0 조회수 408

반례를 못찾겠습니다.

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

http://boj.kr/7b036ef3742940cd860da4b66f630c0b 이론에서 배웠던 코드를 이용해서 구현했는데 어디서 틀렸는지 못찾겠습니다.

  • c++
  • 코딩-테스트
donald010 댓글 1 좋아요 1 조회수 195

문제를 풀다가 정수 관련하여 질문이 생겼어요

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. cin >> N >> K; queue<int> q; q.push(N); // visited[N] += 1; NK = K + 1; cout << K << N; 이렇게 하면 -1 -1을 입력했을 때 -1 -1이 잘 출력되는데 주석을 지우고 실행하면 0 -1이 출력되는 현상이 발생합니다.. #include <bits/stdc++.h> using namespace std; int N, K, visited[500004], prevN, searchTime = 0, flag = 0; int NK = 0; int main() { cin >> N >> K; queue<int> q; q.push(N); // visited[N] += 1; NK = K + 1; cout << K << N; }

  • c++
  • 코딩-테스트
gmltn3544 댓글 2 좋아요 0 조회수 256

6-I 지문 문제

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

http://boj.kr/ea0856e69f854bb9afee8490ed73794d 코드의 질문은 아닙니다.. 지문의 (하지만 하나의 파닭에는 하나 이상의 파가 들어가면 안 된다.) 라는 부분을 읽고 파는 무조건 나뉘어져야 한다. 라고 생각하고 조건을 if(temp>mid) 으로 달았었거든요 어디서 틀렸나 강의 봤는데 if(temp>=mid) 였더라구요 이렇게 되면 파를 통째로 사용하게 되는 경우도 생겨 오답인 것이 아닌가요? 코드 질문은 아니여서 올릴까 말까 하다가.. 찜찜해서 질문드립니다!

  • c++
  • 코딩-테스트
mch473700 댓글 2 좋아요 0 조회수 354

3-A 치킨 배달 시간초과 관련 질문 입니다!

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

http://boj.kr/5b5feb84a65f44c19188df5fbe697fe6 선생님의 풀이와 크게 다르지 않은거 같은데 어디서 시간초과가 나는지 잘모르겠습니다...

  • c++
  • 코딩-테스트
정윤교 댓글 2 좋아요 0 조회수 295

heap overflow 예시에서

해결됨

[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문

예시를 똑같이 작성하고 실습하였는데 아무리 시도를 해도 HEAP CORRUPTION DETECTED라는 내용은 안 나오고 중단점 명령 실행됨(중단점 명령이 ....exe에서 실행되었습니다)이라고만 나오는데 이 2개가 동일한 의미인가요?

  • c++
한울 댓글 1 좋아요 0 조회수 275

2-Q 질문있습니다

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

http://boj.kr/0cfb08048b9141b798f199cfd9993367 굉장히 직관적으로 풀었는데, 치즈가 남아있는지 체크 남아있다면, 치즈의 가장자리 녹이기 (반시계방향으로) 남아있는 치즈의 덩이 (연결요소 개수) 개수 구하고 또 녹이기. 형식으로 구현했습니다.. 테스트 케이스는 어찌저찌 맞은듯 한데 어디에 문제가 있는 코드일까요

  • c++
  • 코딩-테스트
최은정 ◡̎ 댓글 1 좋아요 0 조회수 249

3-J [14497:주난의 난] 질문 있습니다.

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

큰돌님 안녕하세요? 항상 강의 잘 보고 있습니다. http://boj.kr/b8636c720918477b86a00858b5a8929a 위의 제 코드를 채점했을 때 96%에서 "틀렸습니다"로 채점됩니다. 반례가 도저히 생각나지 않아 큰돌님께 여쭤보고 싶어서 질문글을 작성하게 되었습니다. 항상 감사드립니다 !

  • c++
  • 코딩-테스트
김백규 댓글 1 좋아요 0 조회수 218

2-L 질문있습니다.

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

http://boj.kr/a0d2f4d95b384de39d9b01503b89f68c 강의 풀이같은 경우엔, 골이 들어간 시점마다 승부를 비교해 누적해주는 식으로 구현하셨는데, 저는 무승부가 된 시점에, 그 시점에서 이전 골 기록을 빼고 누적해주는 식으로 구현했습니다.. 테스트는 통과하는데 제출시 오답입니다. 어떤 반례가 있는지 못 찾겠습니다 ㅠ 제 코드는 왜 틀린걸까요?

  • c++
  • 코딩-테스트
최은정 ◡̎ 댓글 1 좋아요 0 조회수 183

3-D 정말 모르겠습니다 ㅠㅠ

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. http://boj.kr/ea14b76bba984f7d95c8c9a8ba109d94 선생님 ㅠㅠㅠ 이게 도대체 왜 안되는건지 잘 모르겠습니다...

  • c++
  • 코딩-테스트
jjune0427 댓글 1 좋아요 0 조회수 294

포트폴리오

미해결

[게임 프로그래머 도약반] DirectX11 입문

안녕하세요 루키스님! 현재 언리얼 멀티플레이어 슈팅게임 프로젝트가 하나 있고 싱글 슈터 게임 프로젝트도 있습니다. 제가 지원하고 싶은 회사가 directX3D 활용 능력을 봐서 언리얼 포폴을 어느정도 마무리하고 directX 를 다시 보는 중인데, 루키스님 강의를 듣고 간단한 게임(뱀서라이크류나 전투 정도 가능한) 포폴을 만들 수준이 될까요? 그게 안된다면 렌더러에서 캐릭터 애니메이션(WASD 점프) 정도만 할려고 합니다.

  • c++
  • directx
yo04134 댓글 1 좋아요 0 조회수 507

Converter의 ReadMeshData에서 Material의 저장 여부

미해결

[게임 프로그래머 도약반] DirectX11 입문

//Material Name const aiMaterial* material = _scene->mMaterials[srcMesh->mMaterialIndex]; mesh->materialName = material->GetName().C_Str(); 하나의 메시가 여러 서브 메시를 포함하는 형태로 저장을 하게 되고, 그에 따라서 메시는 각 서브 메시에 따르는 머티리얼을 저장해야 하는데 해당 코드를 통해서는 마지막 서브 메시의 머티리얼만 저장하게 되는것이 아닌지 궁금해서 질문 드립니다.

  • c++
  • directx
gsc0815 댓글 1 좋아요 0 조회수 260

setprecision 용법

미해결

홍정모의 따라하며 배우는 C++

안녕하세요. 교수님께서 setprecision을 사용하실 때 cout << std::setprecision(~)... 로 사용하셨습니다. 이전 제가 들은 설명으론 cout는 콘솔출력으로서 c의 printf처럼 내보낼 게 있을 때 쓰는 것으로 알고있는데 무언가를 출력하지않고 그냥 셋팅에 가까운 역할을 수행하는데 왜 콘솔출력 cout를 앞에 붙여 쓰는지 그 의의를 모르겠습니다. 그냥 단순한 문법인가요? 19:25 부분입니다

  • c++
Echapper4 댓글 1 좋아요 0 조회수 318

분할 컴파일 과정에서의 오류 발생

미해결

[하루 10분|C++] 누구나 쉽게 배우는 C++ 프로그래밍 입문

안녕하세요! 분할컴파일을 하는 도중에 코드에는 문제가 없는 듯 하나,'빌드가 완료되었지만, 오류가 발생했습니다.''터미널 프로세스가 종료되었습니다(종료 코드 : -1).''터미널이 작업에서 다시 사용됩니다'와 같은 오류가 발생하고 실행이 되지 않습니다...해결방법이 궁금합니다ㅠㅠㅠㅠ(현재 실습은 VS Code 환경에서 사용하고 있습니다!!)

  • c++
준재 댓글 2 좋아요 0 조회수 633

교안 p136 질문있습니다

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

안녕하세요. 교안 p136 예제 코드에서 #include <bits/stdc++.h> using namespace std; struct Point { int y, x; }; struct cmp { bool operator()(Point a, Point b) { return a.x < b.x; } }; priority_queue<Point, vector<Point>, cmp> pq; int main() { pq.push({1, 1}); pq.push({2, 2}); pq.push({3, 3}); pq.push({4, 4}); pq.push({5, 5}); pq.push({6, 6}); cout << pq.top().x << "\n"; return 0; } operator가 오버로딩 된 것까진 알았는데 그럼 operator()는 ()라는 연산자를 오버로딩 한 것인가요..?? ()라는 연산자는 무슨 의미를 가진 건가요..? ㅜㅜ 설명해주시면 감사하겠습니다. priority_queue<Point, vector<Point>, cmp> pq; 그리고 이렇게 priority_queue를 선언할 때 인자가 세개 들어가는 게 각각 무슨 의미인지 설명해주실 수 있나요..? 검색을 해도 언급되는 부분을 못 찾겠어서요ㅜㅜ

  • c++
  • 코딩-테스트
Clain 댓글 1 좋아요 0 조회수 174

2-R 질문있습니다..

해결됨

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

http://boj.kr/e351fd164d5943d29c80fef4e6fb27d6 자식노드를 담아주는 인접 리스트를 만들고, cut함수로 잘라낸 노드와 그 자식들을 dead체크를 해주었습니다. 그리고 남은 트리에 관하여, dead 체크와 자식 체크를 해주어 리프 노드를 구해봤는데 무엇이 잘못된 것일까요 ...

  • c++
  • 코딩-테스트
최은정 ◡̎ 댓글 1 좋아요 0 조회수 201

3-J 질문

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

http://boj.kr/a4d6ba76bf2f4964a2ffaccf343ffaa9 주난이를 기준으로 퍼져나가면서 0이면 queue에 넣고 1이면 배열에 넣어두었다가 0으로 바꿔주는 방법을 사용했는데 어디서 틀린건지 궁금합니다.

  • c++
  • 코딩-테스트
ㄱㄷㄱ 댓글 1 좋아요 0 조회수 256

인기 태그

인프런 TOP Writers

주간 인기글