묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
이분 탐색 개념강의 질문
http://boj.kr/74dbf927251b4c4ab965342b7e909a00암기왕 문제 질문있습니다. 틀렸다고 하는데 이 코드가 어디가 틀린건가요..? 그리고 틀렸다면 어디가 틀렸는지 어떻게 확인이 가능한가요..?디버깅도 해보면서 데이터 확인 계속하고 tc들 넣어봐도 어디가 잘못된건지 모르겠습니다 ㅠ
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
알고리즘 교안
알고리즘 교안이 안 올라와 있고 문제 해설 파일만 2개인데 어떡하죠
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
C++ 교안이 잘못 올라간것 같아요.
교안 다운로드 항목을 꼭 눌러서 확인해 보세요.알고리즘 문제 링크관련 업로딩 되어 있습니다. C++ 교안 다운로드 안됩니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-O 질문입니다.
http://boj.kr/f084aebaceb24ec69e9a3306fc036ddb2주차의 벽세우기 문제처럼가로선 추가할 수 있는 모든 후보들을 vector에 집어넣고하나 선택하고 안 되면 2개 선택하고 또 안 되면 세개 선택하는 방식으로 풀었는데강의에서 말씀해주신대로 모든 경우의 수를 다 따져도 시간 초과가 안 날 거 같은데 시간초과가 납니다무엇이 문제일까요?is_valid() 함수는 가로선을 하나 추가했을때 겹치는지 확인하는 함수이고is_connected() 함수는 하나씩 사다리 타서 문제의 조건 (시작점과 도착점이 같은 것)에 맞는지 확인하는 함수입니다
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-P 질문입니다.
http://boj.kr/29cf5d9bfcf64cdaa6e347953dce96da 코드 설명부분은 주석달아 두었습니다.. 벡트렉킹으로 풀었는데이상한 데이터 넣어보고 다른 TC들 혼자서 테스트 해보았는데 답은 잘나오는데 백준에서는 틀렷다고 합니다ㅠㅠ어디서 틀린것인가요..??
-
해결됨홍정모의 따라하며 배우는 C++
형변환 오버로딩에서 const 관련 질문이 있습니다.
안녕하세요!제가 학교에서 공부하던 코드에 대해 질문이 있는데요.혹시 여기에 다른 코드 가져와서 질문을 하는게 안된다면 말씀해주시면 감사하겠습니다.이렇게 3개의 type conversion operator를 만들어서여기에 사용을 했는데요. 에러가 발견되어서 수정하다보니 type conversion operator뒤에 모두다 const를 넣거나 모두다 const를 빼면 저 오류가 사라지더라구요.수업중에 const를 가지고 overloading을 할 수 있다는 내용은 배웠었는데요. 그때는 하나는 const를 넣고 하나는 const를 안 넣으면 const의 유무에 따라 오버로딩이 된다는 내용으로 기억합니다. 그런데 이렇게 const의 유무가 모두 동일하게 들어가야지만 에러가 나지 않는 것과는 다른 것 같아서 왜 그런건지 궁금해서 질문드려요.type conversion operator를 사용할 때는 const 유무를 모두 동일하게 가져가야한다라고 이해하면 될까요?
-
미해결홍정모의 따라하며 배우는 C++
Digit 뒤에 reference를 사용하는 이유
안녕하세요.2분 10초에 prefix operator 만드실때요.Digit뒤에 &를 사용하셨잖아요.Digit&는 return type을 의미하는 것일텐데 *this는 포인터 아닌가요?이 부분이 잘 이해가 되지 않습니다.고민하다가 &를 빼봤는데 잘 작동하더라구요. 왜 &가 없어도 잘 작동이 되는걸까요?추가적으로 질문이 하나가 있는데요.코딩공부를 하다보면 반복되는 문장들이 있잖아요.이번에 배우고 있는 연산자 오버로딩들을 보면 구조가 어느정도 정해져있고 내가 필요에 따라 조금만 바꿔가며 사용하면 되는 것 같은데요.초보가 이런 부분을 공부할 때 하나하나 이해를 해가며 공부를 하는게 좋을까요? 아니면 마치 영어 문장 외우듯이 'prefix는 자기자신을 return하니까 &가 붙어야하고 postfix는 자기자신을 return하는건 아니니까 &가 없어도 돼'라고 외워버려도 괜찮을까요?모든 부분을 하나하나 이해하고 넘어가면 제일 좋겠지만 시간적으로 조금 낭비 같다는 생각도 들어서 여쭤봅니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-C 문제 저는 왜 런타임 에러가 날까요..
안녕하십니까 항상 잘보고있습니다!!2-C문제를 풀면서 큰돌님과 똑같이 답안을 작성하였는데, 저는 왜 런타임 에러가 날까요.. 흑흑 분명 똑같은데 .. 몇번이고 비교해봤는데 뭐가 다른지 모르겠네요 ㅠㅠ #include<bits/stdc++.h> using namespace std; int a[101][101], visited[101][101], e[101][101], n, temp, ret = 1; int dy[4] = {-1, 0, 1, 0}, dx[4] = {0, 1, 0, -1}; void dfs(int y, int x, int d){ visited[y][x]=1; for(int i=0; i<4; i++){ int ny=y+dy[i]; int nx=x+dx[i]; if(ny<0 || nx<0 || ny>=n || nx>=n ) continue; if(!visited[ny][nx] && a[ny][nx]>d ) dfs(ny, nx, d); } return; } int main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); cin>>n; for(int i=0; i<n; i++){ for(int j=0; j<n; i++){ cin>>a[i][j]; } } for(int d=1; d<101; d++){ fill(&visited[0][0], &visited[0][0]+ 101 * 101, 0); int cnt=0; for(int i=0; i<n; i++){ for(int j=0; j<n; j++){ if(a[i][j]>d && !visited[i][j]){ dfs(i, j, d); cnt++; } } } ret=max(ret, cnt); } cout<<ret<<'\n'; return 0; }
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-M 질문
http://boj.kr/51928d5f470e44a0839c4bfd433f3e08arr이라는 배열을 만들어서 부등호랑 입력받을 문자들을 arr한곳에 다 넣어놓고 이것을 그래프로 생각을 한뒤 DFS로 완탐해서 풀었는데 답은 항상 나오는데 어디에 예외 사항이 있는지 모르겠습니다.제가 직접 숫잘 넣어보면서 봐도 답은 잘 나오는데 계속 틀렸다고 뜨는데 어느 부분이 잘못된 것일까요?숫자는 항상 입력받은 k개 길이만큼만 다 걸러낸다음에 arr의 k * 2인덱스 에 숫자가 있는 경우 == k개 만큼 숫자를 다 채웠을 경우최대최소를 구할 수 있도록 하였습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
C++ 알고리즘 교안
C++알고리즘 수업자료에 같은 알고리즘 해설이 올라가 있는데 제가 잘못 들어간 걸까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2852번 - NBA 농구(2-L) 문제 질문 요청드립니다.
안녕하십니까, 큰돌님!2852번 - NBA 농구(2-L) 문제 질문 요청 드립니다.제가 푼 풀이에서 어디에서 틀린지 잘 모르겠어서 질문 드립니다. 3가지 Test Case에 대해서는 정답으로 나오는 데 제출시 3프로에서 틀립니다.하기에 제가 푼 풀이 링크 공유 드립니다.http://boj.kr/45f65d375a8e4375b2e899063a186f56항상 좋은 가르침을 주셔서 감사합니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
교안 p.117 예제질문입니다
안녕하세요, 강사님. 강의 잘 듣고 있습니다.제가 교안을 공부하다가 p.117에 있는예제에 대해서 질문 드립니다.http://boj.kr/2cb405455d8a4118afa5a962f387388d 처럼17행을 교안과 달리 }while(next_permutation(b.begin(), b.end())); 으로 작성하면 에러가 나는데 그 이유가 무엇인지 알 수 있을까요?교안은 }while(next_permutation(b, b + 3)); 로 작성되어 출력이 되어집니다
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part1: C++ 프로그래밍 입문
빌드(망치)를 누르니 이런 오류가 떴습니다. 어떻게 해야 하나요?
어떠한 경로에서 파일 혹은 디렉토리를 찾지 못한다는 것 같은데 어떻게 해결 할 수 있나요?
-
미해결홍정모의 따라하며 배우는 C++
4.2 전역 변수, 정적 변수, 내부 연결, 외부 연결
4.2 전역 변수, 정적 변수, 내부 연결, 외부 연결 33:55에서 초기화를 안해줘서 메모리가 할당이 안됐다는 부분이 이해가 안갑니다 초기화를 안해줘도 변수선언시 메모리영역에 쓰레기값이 할당돼서 결국 cout으로 출력을 하면 쓰레기값이라도 나와야 하는거 아닌가 라는 생각이 듭니다
-
미해결홍정모의 따라하며 배우는 C++
dat파일이...
dat파일이 C++로 작성된 프로그램과 가장 기본적으로 상호작용하는 형식으로 알면될까요? 어렵게 생각하지말고 그냥 exls파일이나 png파일 wave파일 처럼 그냥 파일로 생각해도 되죠??
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-H질문
http://boj.kr/f1f1a8da0bf348f18816f1df97c07baf어디가 틀린건지 도저히 모르겠습니다....ㅠㅠ 제가 짠 코드에다가 선생님이 MAX로 설정하신 부분 해서 했는데 답은 나오는데 틀렷다고 뜨는데 어디가 문제인지 모르겠습니다. 그리고 n == m일 경우 어떻게 출력해야하나요...? 일단 시간은 0인것은 알겠는데 그다음에 공백을 출력을 해야할지 아니면 n을 출력을 해야할지를 모르겠습니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
교안질문
안녕하세요 큰돌님 교안 관련 질문사항이 있어 이렇게 글을 남깁니다~Q1. 포인터를 일반화 했다는게 무슨 뜻인가요?Q2. 2차원 배열 선언 3가지 방법 중 마지막 방법은 vector<int> v3[10] 이렇게 선언하면서 2차원으로 선언되었다는 건가요?Q3. 요소에 접근한다는게 참조를 한다는 건가요 탐색을 한다는 건가요?Q4.랄로구조체 설명시 함수에 매개변수로 가져올 때 Ralo ralo로 가져오는데 Ralo라는 구조체에 ralo라는 변수명을 지어서 가져온 것으로 봐도 될까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
시간복잡도와 시간제한 질문입니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.선생님께서 본 문제에서 dfs를 사용하면 연산량이 1억번이 돼서 많을수도 있다고 하셨는데, 이 문제는 시간제한이 길어서 통과가 된다고 수업에서 말씀해주셨습니다. 그렇다면 1만번 데이터를 O(n제곱) 알고리즘으로 연산을하면 보통 시간제한 몇 초까지 가능하다고 생각하면 될까요?
-
해결됨홍정모의 따라하며 배우는 C++
TODO:대입 연산자 오버로딩에 대한 소스코드입니다.
#include <iostream> #include <cassert> #include <initializer_list> // std header file using namespace std; class IntArray { private: int length_ = 0; //unsigned int는 32비트임 int* data_ = nullptr; public: IntArray(const int& length) : length_(length) { data_ = new int[length]; } IntArray(const std::initializer_list<int>& list) : IntArray(static_cast<int>(list.size())) // list의 size만큼 위임생성자가 호출됨 { int count = 0; //count는 인덱스 기능 for (auto& element : list) // for-each구문에서는 initializer_list안의 iterator가 사용됨 { data_[count] = element; // 아래의 operator<<에서 객체 출력을 위해 ++count; } } ~IntArray() { delete[] data_; } //TODO: overload operator = IntArray& operator= (const std::initializer_list<int>& copy) { cout << "Assignment operator" << endl; length_ = copy.size(); delete[] data_; // 기존에 있던 리스트를 지움 /*if (this == copy) return *this; */ if (data_ != nullptr) { data_ = new int[length_ + 1]; // 아래의 ++count때문에 +1해줘야함 int count = 0; for (auto& e : copy) { data_[count] = e; ++count; // } } else data_ = nullptr; return *this; } friend ostream& operator<< (ostream& os, const IntArray& arr) { for (int i = 0; i < arr.length_; i++) os << arr.data_[i] << " "; os << endl; return os; } }; int main() { auto il = {2,4,6}; IntArray int_array{ 1,2,3,4,5,6,7,8,9,10 };//이니셜라이져 리스트로 인스턴스 생성 cout << int_array << endl; int_array = { 1,3,5,7,9,11 }; cout << int_array << endl; }부분 중, IntArray(const std::initializer_list<int>& list) : IntArray(static_cast<int>(list.size()))를 static_cast로 바꿨는데도 아래와 같은 오류가 나네요. 환경설정을 64비트로 하고 보통 vs 소스코드를 짜는데요 int는 32비트라서 저런 오류가 뜰 수 밖에 없다고 하네요. 혹시 해결할 방법이 없을까요??
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
인접리스트 시간 복잡도가 잘 이해가 가지 않습니다.
선생님 안녕하세요.수업 열심히 들으면서 코테 준비중인 취준생입니다.인접리스트의 공간복잡도와 모든 간선찾기의 설명을 들으면서 약간 의문이 들어 질문드립니다.예를 들어,vector<int> v1[V] 만큼의 배열을 생성하고 나서, 각 배열에 연결할 정점들을 다 카운트 했을 때 E개라서 공간복잡도가 O(V + E) 이라고 이해해도 될까요?E = E * push_back(i); 와 같은 코드로 이해했습니다.재미있고 수준높은 강의 잘 듣고 있습니다!