묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결홍정모의 따라하며 배우는 C++
( )로 초기화를 하는 걸 뭐라고 부르나요?
안녕하세요!앞 강의에서 설명을 해주셨던 것 같은데,필기를 안해놔서 기억이 안나서 질문드려요.{ }으로 초기화를 한 것을 uniform initialization이라고 하잖아요.그럼 ( )으로 초기화를 한 것은 명칭이 뭔가요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-A 도대체 뭐가 틀린건지 모르겠어요
http://boj.kr/d2eacfaff77446728671edea35b1d7e9코드 작성한 후 강사님 코드를 보면서 수정하였는데 도대체 뭐가 틀린 건지 모르겠습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
그래프 문제 해결 방식 관련
안녕하세요, 강사님좋은 강의 덕분에 코테 준비를 잘 해가고 있습니다. 다름이 아니라, 그래프 유형 문제를 풀 때, 즉 bfs나 dfs 관련 문제를 백준 사이트에서 찾아 풀 때, void bfs(int y, int x).... 이렇게 풀고 있는데, 오래 걸려도 풀지 못 할 때, 다른 사람의 답안을 볼 떄는 void bfs(int x, int y)로 잡아서 풀더라구요. 다른 사람의 답안을 강사님이 풀어주시는 방식으로 바꿔 풀 때는, 그냥 x->y, y->x로만 바꿔서 풀면 될지, 매개변수 들을 다 바꿔야 될지 굉장히 헷갈려서 질문 드립니다 ㅠㅠ
-
미해결코딩테스트 실전 모의고사(with C++) : 대기업 대비
조합을 구할때 algorithm 함수 next_permutation 사용 가능 여부
제목 그대로 조합을 구할때 next_permutation 을 사용 해도 되는지 궁금합니다
-
미해결코딩테스트 실전 모의고사(with C++) : 대기업 대비
최악의 경우 연산 질문이 있습니다.
강의를 수강하고 있는 학생입니다. 다만 최악의 경우를 따지는 데에서 조합의 수 x n(학생의수) 의 최악의 경우15C7 x 30000인데 이경우 6435x30000=193,050,000가 도출됩니다.이러면 계산이 2억번 가까이 되어서 1000ms에 풀수 있는지 여쭤 볼 수 있을 까요?
-
미해결홍정모의 따라하며 배우는 C++
제가 이해한것 정리해봅니다 맞는지 확인 부탁드려요
Resource &operator = (Resource& res) // '='연산자 오버로딩 함수 (반환값이 Resource, 이고 &는 왜 붙는지 모르겠음 '='를 써주는 것처럼 하나의 약속인가요?) { std::cout << "Resource copy assignment" << std::endl; if (&res == this) return *this; //파라미터로 들어온 객체와 &operator함수를 실행중인 객체가 같은가? if (this->m_data != nullptr) delete[] m_data; //다르다면 현재 함수를 실행중인 객체의 m_data가 있으면 비워주고 m_length = res.m_length; //자신의 m_length에 파라미터로 들어온 객체의 m_length로 채워주고 m_data = new int[m_length]; //자신의 m_data의 메모리를 m_length만큼 동적할당해준 뒤 for (unsigned i = 0; i < m_length; ++i) m_data[i] = res.m_data[i]; //자신의 m_data에 파라미터로 들어온 객체의 m_data를 복사해서 넣는다. return *this; //이 함수가 종료되면 나 자신의 객체의 주소를 반환한다. 반환값이 Resource클래스인데 어떻게 포인터로 가능하죠? }
-
미해결홍정모의 따라하며 배우는 C++
stdafxh에 관한 오류
1.09 강의에서는 교수님 코드를 보면 stdafx.h를 인클루드 하셨길래 저도 따라해보려 하니 미리컴파일된 헤더 관련해서 #include "stdafx.h"가 오류가 나더라구요 구글링을해보니 저 #include "stdafx.h"을 쓰면 좀 더 빠르게 컴파일?된다는거 같아서 프로젝트 설정에서 미리컴파일된 헤더 사용안함에서 사용으로바꾸고 해봐도 오류가 나서 일단은 기본대로 사용안함하고 #include "stdafx.h"이 코드도 안적고 하고있는데 미리컴파일된 헤더사용을 하려면 어떻게 설정해야될까요 ?감사합니다. - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
map 질문드립니다.
vector<int> v{1,1,2,2,3,3};에서 map을 이용해서 중복제거하셨던데for(int i : v){ if(mp[i]){ continue; }else{ mp[i] =1; }} i에 순서대로 1,1,2,2,3,3이 들어가는거까진 알겠는데이 for문을 돌면 map에는 1,2,3이 어떻게 들어가는건지 이해가 잘 안가네요 ㅠㅠ첫번째 mp[1]이 들어가면 else로 들어가서 mp[1] = 1이 들어가고 다음 i=1이 들어가면 if(mp[1])에서 1이 있으므로 true이고 continue로 들어가는건 알겠습니다.i=2가 들어가면 이때부터if(mp[2])에서 여기부터 이해가 잘 안갑니다. 어떻게 mp[2]에 2가 들어가는지요..
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-S
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <algorithm> #include <map> #include <set> #include <vector> #include <queue> #include <cstring> int N, M; int cache[10001] = {-1,}; int traverse(std::map<int, std::vector<int>>& treeMap, int node) { if (treeMap.find(node) == treeMap.end()) { cache[node] = 1; return 1; } if (cache[node] != -1) { return cache[node]; } int sum = 0; std::vector<int> v = treeMap[node]; for (int i = 0; i < v.size(); ++i) { int tmp = traverse(treeMap, v[i]); sum += tmp; } cache[node] = sum + 1; return sum + 1; } int main() { std::ios_base::sync_with_stdio(false); std::cin.tie(nullptr); std::cout.tie(nullptr); std::cin >> N >> M; memset(cache, -1, sizeof(cache)); std::map<int, std::vector<int>> treeMap; for (int i = 0; i < M; ++i) { int from, to; std::cin >> to >> from; if (treeMap.find(from) == treeMap.end()) { std::vector<int> v; v.reserve(N); v.push_back(to); treeMap[from] = v; continue; } treeMap[from].push_back(to); } std::map<int, std::vector<int>> countMap; int maxCount = 0; for (auto iter : treeMap) { const int startNode = iter.first; memset(cache, -1, sizeof(cache)); int nodeCount = traverse(treeMap, startNode); maxCount = std::max(maxCount, nodeCount); if (countMap.find(nodeCount) == countMap.end()) { std::vector<int> v; v.push_back(startNode); countMap[nodeCount] = v; continue; } countMap[nodeCount].push_back(startNode); } for (int i = 0; i < countMap[maxCount].size(); ++i) { std::cout << countMap[maxCount][i] << " "; } std::cout << std::endl; return 0; }답이 틀렸다고 나오는데 어디서 왜 틀렸는지 잘 모르겠습니다. 혹시 이 부분을 설명해주실 수 있으실까요?
-
미해결홍정모의 따라하며 배우는 C++
too long이 나오는 이유 그냥...
언더플로우 일어난거 아닌가요?이 부분 입니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
강의 내용 정리
코딩 테스트 준비를 처음하는 취준생입니다. 다름이 아니라 학습 내용 정리 및 학습을 했다는 나름의 증명으로 개인 blog에 내용을 정리하고자 합니다.코드랑 수업 내용 일부분을 캡쳐 해서 블로그에 사용해도 되는지 궁금해서 질문을 남깁니다.출처는 반드시 밝히겠습니다!
-
해결됨홍정모의 따라하며 배우는 C++
익명 객체에서 생성자와 getCents함수에 대해 궁금한 점이 있습니다.
#include <iostream> using namespace std; class Cents { private: int cents_; public: Cents(const int& cents) : cents_(cents) { cout << "Constructor" << endl; } const int& getCents() const//뒤에 const를 붙여준 이유는 함수 오버로딩 { return cents_; } }; Cents add(const Cents& c1, const Cents& c2) { return Cents(c1.getCents() + c2.getCents());//Cents 생성자 호출 } int main() { cout << add(Cents(6), Cents(8)).getCents()<< endl; //인자로 하는 생성자 각각 호출 return 0; }교수님께서는 getCents함수에서 반환형에서 참조자를 붙이지 않고 뒤에 const만 붙였는데요. 이러면 return by value가 되서 복사된 값을 반환하는 것이 아닌가요? 멤버변수 그 자체를 반환하고 값이 변경되는 것을 방지하기 위해서는 반환형에 const int&를 붙여야 하지 않나요??
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
알고리즘 교안 하루만에 다 봤는데요.,
c# 4년차입니다. 비전공자입니다.c++로 알고리즘 풀어보려고 일단 교안은 코드 쳐보면서 다 보았습니다.다만, 이해가 안가는 부분도 중간중간에 있지만 일단 한번은 훑어보았습니다.(비전공자라..쉽지는 않네요)지금상태에서 바로 0주차부터 강의들어도 될까요??
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
dev c++ 자체 오류..
어제 강의 결제하고 오늘부터 시작하려는데 이렇게 뜨고 다른 코드도 전부 안되네요..
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
log(2n+1) 이 아니라 log2의(2n) 아닌가요?
갑자기 2n+1 이 왜 나온지 모르겠습니다...
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
6-B, 기타레슨
for(int i = 0; i < n; i++){ if(mid - a[i] < 0){ mid = temp; cnt++; } mid -= a[i]; } if(mid != temp) cnt++;이 부분이 아무리 봐도 들어도 이해가 안됩니다...ㅠㅠ그리고 rt를 누적합으로 둬야되는 이유도 잘 모르겠습니다.누적합을 이분탐색으로 mid를 두는것이 크기를 정한다는 의미도 뭔가 와닿지 않습니다..
-
해결됨[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
템플릿 특수화 관련 질문
안녕하세요. c++ 강의 중 "템플릿 기초 #1" 듣다가 질문이 생겨 남깁니다.템플릿 특수화가 필요한 이유를 모르겠습니다. 아래 두 코드를 비교했을 때 굳이 템플릿 특수화를 해야 하는 이유가 무엇인가요? 또, 템플릿 특수화가 필요한 상황은 어떤 상황이 있나요??<템플릿 특수화 사용한 경우>template<typename T> void Print(T a) { cout << a << endl; } template<> void Print(float a) { cout << "템플릿 특수화" <<endl; cout<< a << endl; }<오버로딩 사용한 경우>template<typename T> void Print(T a) { cout << a << endl; } void Print(float a) { cout << "템플릿 특수화" <<endl; cout<< a << endl; }컴파일러에 돌려보니 결과도 똑같이 나옵니다. 너무너무 궁금합니다ㅠㅠ 감사합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
현대엔지비(Softeer) 코딩 테스트 관련해서
Language가 GNU C++ 17인데 #include<bits/stdc++.h>라이브러리 사용 가능한거죠??
-
미해결코딩테스트 실전 모의고사(with C++) : 대기업 대비
로컬 환경과 다르게 오답이라고 나와서 문의 드립니다.
안녕하세요!우선 수업 굉장히 잘 듣고 있습니다! 도움이 많이 되네요!금일 문제를 풀고 있는데 제 로컬 환경에서는 아웃풋이 잘 나오는데 채점 사이트에서 답이 제대로 안나와서요..채점 사이트에 문제가 있는걸까요~?어제까지는 결과가 잘 나왔었어서 로컬 환경은 바뀐게 없습니다..아래 문제 목록 및 현상입니다. 도움 부탁 드립니다문제 : 5. 톰과 제리(BFS)해당 ID : d7a123cc4487문제 현상 : 채점 결과에 리턴값이 몇백줄 공란으로 나온 다음에 결과값이 프린트 되고 있습니다. 문제 : 4. 스도쿠(DFS 활용)해당 ID : ce811046b640문제현상 : 채점결과가 아예 나오지 않고 있습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-S 1325번 효율적인 해킹 문제 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.http://boj.kr/d5dbeef9edfd46d4b6ca8eda86668fcd문제는 해결했는데 궁금한 점이 생겨 질문 드립니다.23번째 줄에서 배열 초기화 할 때 fill함수가 아닌 memset함수를 사용해야 하는 이유가 궁금합니다.fill함수를 쓰면 출력 결과가 안 나오는데 어떤 문제 때문에 그런건지 궁금합니다. 코드에 문제가 있는 건가요? -> fill(&visited[0], &visited[0]+10001*10001, 0);