월 33,000원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
7-O 질문입니다!
안녕하세요, 큰돌님17837을 풀던중 문제 예제 입력 5에서 답이 나오지 않습니다.반례를 다 찾았다고 생각했는데, 대체 왜 안되는지 궁금합니다... https://www.acmicpc.net/source/72120636
- 해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-A 테스트 케이스는 통과하는데 틀렸다고 뜹니다 ㅠ
안녕하세요 선생님,강의 잘 보고 있습니다. http://boj.kr/af15ab332b77463faa58e47e6826ca48선생님께서 설명하신 방법과 비슷한데, 일곱 난쟁이가 아닌 두 명을 잡아내기 위해 아홉개의 입력값의 합 sum에서 일곱 난쟁이 키의 합인 100을 뺀 sum-100 을 sub라는 변수에 담아두었고, 이중for문을 이용해 두 입력값의 합이 sub와 일치하는 두 수를 찾아냈습니다. 배열은 삭제가 안되니 그냥 저 두수를 0으로 처리하고 sort를 통해 오름차순으로 정렬한 다음, 출력할 때 두번째 인덱스부터 출력하도록 코드를 짜봤습니다.(0으로 바뀐 두 수는 맨 앞인 0번째와 1번째에 위치하게 되어 2번째 인덱스부터 출력하도록 하여 출력이 안되는 것을 의도) 야매스러운 방법이긴 하지만.... 그래도 어느 부분에서 예외가 발생했는지 확실히 알고 싶어 이렇게 질문드립니다!
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-n 홀수의 경우가 잘 이해가 되지 않습니다.
if (b % 2) ret = (ret * a) % c;홀수의 경우 a를 한번 더 곱해서 값을 return하게 되면(a^b * a^b * a)^2 % c 하는 경우가 생기는 것 같은데 적상적으로 작동하는 이유가 궁금합니다
- 해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
백엔드 공부용 맥 사양
맥북에어 m1 또는 m2 ...16gb 256ssd백엔드 진로 공부용으로 충분한 사양일까요?? 조언 부탁드리겠습니다 선생님.
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
m1 세팅 재질문드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.말씀해주신 방법대로 했고 bits인지 확인 후 해도 다음과 같이 에러가 발생합니다. 수업자료에 있는 m1 추가 방법으로해도 오류가 발생하네요;;whoami 도 첨부하겠습니다. 감사합니다.
- 해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1주차 문제로 연습하는 시간복잡도 Q3 질문 있습니다!
안녕하세요go함수가 2n-1 번 호출된다는 것은 이해했습니다.그런데 main함수에 보면 for문이 하나 더 있는데, 그럼 이 for문 내에서 n번 도는 거니 n + (2n-1) = 3n-1 이 되어야 하는 것 아닌가요?? 사실 빅오표기법에 의하면 둘다 O(n) 이어서 크게 중요하진 않을 수 있으나 혹여나 제가 잘못 이해한 부분이 있다면 바로잡고 싶어 질문드립니다!
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
교안 p.46 질문
#include <bits/stdc++.h> using namespace std; int n; int main() { cin >> n; int a[n]; memset(a, 0, sizeof(a)); for(int i : a){ cout << i << " "; } return 0; }여기서 선생님이 에러가 난다고 했는데, 제 컴퓨터 vscode에서는 왜 에러 안뜨고 실행이 잘 되는 이유를 알고싶습니다. 제가 리눅스 터미널에서도 실행시켜 봤는데 에러가 발생하지 않는데, 원인을 잘 모르겠습니다.
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
7-M 반례 질문입니다!
안녕하세요, 큰돌님!16235 문제를 풀던 중 아래 코드가 왜 안되는지 궁금합니다.맵에 각각 벡터를 넣지 않고 총 살아있는 나무를 넣는 우선순위 큐를 사용해서 구현 해보았습니다.우선순위 큐는 나이를 기준으로 오름차순 합니다. https://www.acmicpc.net/source/72058303 반례는 이것인데, 제 논리 대로라면 된다고 생각하는데 여기서 잘못된 답을 뱉어내네요... 5 2 7 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 3 2 3 2 2 1 3 3 2 3 답 : 71
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-J 질문
큰돌님 안녕하세요! 궁금한 게 있어서 질문 드려요~해당 문제 dfs로 풀어봤는데 이렇게 풀어도 괜찮을까요?좋은 수업 잘 보고 있습니다 감사합니다.http://boj.kr/98095677a0504f42a0d20b8758029ce2
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
값은 정상적으로 나오는데 어디가틀린지모르겠습니다.
안녕하세요 큰돌님. 언제나 늘감사하게 수업듣고있습니다.vscode에서는 이코드로돌리면 정상적으로 나오는데 어디가틀린지 모르겠네요 한번만 봐주실수있을까요? 감사합니다.#include<bits/stdc++.h> using namespace std; string a[104][104]; int h,w,cnt,ret[104][104]; string s; bool flag; int main() { cin >> h >> w; for(int i=0; i<h; i++){ for(int j=0; j<w; j++){ cin >> s; a[i][j] = s; } } for(int i=0; i<h; i++){ flag = 0; for(int j=0; j<w; j++){ if(a[i][j] == "c"){ cnt = 0; flag = 1; ret[i][j] = cnt; } if(flag && a[i][j] == "."){ cnt++; ret[i][j] = cnt; } else if(!flag) { flag = 0; ret[i][j] = -1; } } }; for(int i=0; i<h; i++){ for(int j=0; j<w; j++){ cout << ret[i][j] << " "; } cout << "\n"; } return 0; }
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-I 런타임 에러
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.안녕하세요 큰돌님! 2-I를 푸는 과정에서 코드를 수정해도 똑같은 오류가 나서 질문 남깁니다..코드를 작성할 때마다 런타임에러가 나는데 이유를 모르겠습니다.http://boj.kr/a34c68854cf14b81923e976a22e91188
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-L 주몽 문제 질문입니다
안녕하세요 큰돌님. 현재 강의를 듣고 있는 수강생입니다. 현재 1-L문제를 Vector형식에서 이중 for문을 이용해서 푸는데 고유한 값을 만들 수 있는 두개의 값이 있을 경우 이후 두개의 값을 0으로 처리하여 첫 번째 for문에서 0이 있을 경우 두 번째 for문으로 들어가지 않게 처리를 했는데요. 그 처리를 하니 백준에서 틀렸다고 나옵니다. 하지 않았을 경우에는 맞다고 표시가 되고요. 그래서 이유가 뭔지 궁금합니다. http://boj.kr/561f58234a27422bb2b2e02606e349fa
- 해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-N 비효율적으로 풀었는데 이렇게 접근해도 되나요?
안녕하세요 큰돌님,다름이 아니고 3-N 완전이진 트리문제 이거 정석적인 방법이 잘 안떠올라서 무식하게 풀었는데 이렇게 풀어도 괜찮은가요?항상 문제 먼저 풀어보고 안풀리면 큰돌님 영상보는 식으로 학습중이거든요.... 이번에는 영상 보기전에 풀어서 통과가 되었지만 이런 방식으로 문제에 접근해도 괜찮은 건지 여쭙니다. #include <bits/stdc++.h> using namespace std; int K, ksize, input; vector<vector<int>> result; vector<int> v; int main() { cin >> K; ksize = pow(2, K) - 1; for (int i = 0; i < ksize; ++i) { cin >> input; v.push_back(input); } while (v.size()) { vector<int> temp; for (int i = 0; i < v.size(); i += 2) { temp.push_back(v[i]); } result.push_back(temp); for (int i = v.size() - 1; i >= 0; i--) { if (i % 2 == 0) { v.erase(v.begin() + i); } } } for (auto i = result.rbegin(); i != result.rend(); ++i) { for (const auto &n : *i) { cout << n << ' '; } cout << '\n'; } return 0; }
- 해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
선생님 2주차 개념 #9의 예제 문제 질문있습니다.
해당 코드는 제가 직접 구현한 문제 해답 코드인데요. 5 51 0 1 0 11 1 0 0 10 0 0 1 10 0 0 1 10 1 0 0 0의 테스트 케이스를 통과하도록 짜봤습니다.n * m 의 인접행렬을 만들고 1을 발견할 시 그 위치에서부터 ↑→↓←의 순으로 탐색을 하며 네 방향의 탐색을 마쳤을 때 결과가 모두 1이 아니라면 결과값을 1씩 증가시켜 답을 출력하는 코드입니다.첫번째 질문으로는 제가 구현한 코드가 너무 비효율적인 것 같습니다. 어떻게하면 이 코드에서 더 좋은 코드로 발전시킬 수 있을까요?두번째 질문으로는 제가 구현한 방식을 dfs라고 할 수 있는걸까요? 그냥 감으로 작성한 코드라서 이게 될줄 몰랐습니다..코드는 다음과 같습니다.단순히 구현만 하는것으로는 정답이겠지만 만약 이런 문제가 나온다면 시간초과나 메모리 초과가 날 게 분명해 보입니다../* 연결된 육지는 모두 오염 바다로는 갈 수 없다. 오염시킬수 있는 방향은 상 하 좌 우 네방향 최소 몇번을 이동해야 모든 육지를 오염시킬 수 있는가? 1 : 육지 0 : 바다 범위 1 <= N <= 100 1 <= M <= 100 예제 입력 입력은 맵의 세로길이 N과 가로길이 M이 주어진다. N * M의 맵이 주어진다. 5 5 1 0 1 0 1 1 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 0 0 0 출력 4 */ #include <bits/stdc++.h> using namespace std; const int dy[] = {-1, 0, 1, 0}; const int dx[] = {0, 1, 0, -1}; int n, m, findCount = 0; void dfs(int y, int x, int **ajm){ ajm[y][x] = 0; int check = 0; for(int i = 0; i < 4; i++){ int ny = y + dy[i]; int nx = x + dx[i]; if(ny < 0 || ny >= n || nx < 0 || nx >= n) { check++; if(check == 4){ findCount++; return; } continue;} if(ajm[ny][nx] != 1) { check++; if(check == 4){ findCount++; return; } continue; } if(ajm[ny][nx] == 1){ dfs(ny,nx,ajm); return; } } } int main(){ int num; cin >> n >> m; int **ajm = new int*[n]; for(int i = 0; i < n; i++){ ajm[i] = new int[m]; } for(int i = 0; i < n; i++){ for(int j= 0; j < m; j++){ cin >> ajm[i][j]; } } for(int i = 0; i < n; i++){ for(int j= 0; j < m; j++){ if(ajm[i][j] == 1){ dfs(i, j, ajm); } } } cout << findCount; return 0; }
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2468 질문있습니다!
http://boj.kr/edaf5f63d5104445b6740ef8ab48e5c6 강의를 듣기 전에 문제를 풀어서 제출을 했습니다.예제는 맞았는데 틀린 이유를 찾지 못했습니다. 한번 살펴봐주시면 감사하겠습니다!항상 감사합니다!
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
m1 세팅 확인 부탁드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.이렇게 진행했는데 오류가 계속 뜹니다.visual studio code는 세팅을 하고 설치하면 될까요?추가로 터미널에서 줄바꿈 기능은 따로 없는걸까요?
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
7-C 질문
안녕하세요 큰돌 선생님 좋은 강의 감사합니다 문제를 복습하다 질문이 생겼는데요, int &ret = d[y][x]; if (ret) return ret; check[y][x] = 1;이 부분에서 check[y][x] = 1; 이 코드가 위의 두 줄의 코드보다 먼저 나오면 왜 틀리는건가요?제가 처음 코드를 작성했을때 check[y][x] = 1; int &ret = d[y][x]; if (ret) return ret;이런식으로 작성했다가 바로틀렸다고 나와서, 고민하다가 선생님 코드와 비교해보니 이 부분에 차이가 있어서 고쳐서 맞았습니다. 해당 y, x 지점에 dp의 값이 있다하더라도 그 값을 사용하는것 맞지만 방문하는것도 맞으니 상관없다고 생각했는데 혹시 어떤 부분이 잘못된 생각인가요?
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
맥북 m1 세팅 질문드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 오류가 뜨면 다음과 같이 진행하라고 하셨는데 정확하게 어디에 a.cpp를 삽입해야하는지 이해가 잘 되지 않습니다. 해당 경로로 이동 후 파일을 만들면 되는걸까요?(mkdir a.cpp)
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-L 질문
저는 Combination을 썼을때 이중 반복문을 사용해야되니까 시간복잡도가 클거라 생각해서 two sum 을 재귀함수를 통해 구현해서 문제를 풀었습니다. 백준에 문제를 제출했을때 8ms 가 나오긴했는데 일반적으로 어떤 방법이 더 효율적인지 여쭤보고 싶습니다.
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
[2468번] segmentation fault
// Online C++ compiler to run C++ program online #include <bits/stdc++.h> using namespace std; // 많은 비가 내렸을 때 물에 잠기지 않는 안전한 영역이 최대로 몇 개가 만들어 지는 지를 조사하려고 한다. 이때, 문제를 간단하게 하기 위하여, 장마철에 내리는 비의 양에 따라 일정한 높이 이하의 모든 지점은 물에 잠긴다고 가정한다. // 어떤 지역의 높이 정보가 주어졌을 때, 장마철에 물에 잠기지 않는 안전한 영역의 최대 개수를 계산하는 프로그램을 작성하시오. ////입력 : // 1. 첫째 줄에는 어떤 지역을 나타내는 2차원 배열의 행과 열의 개수를 나타내는 수 N (N은 2 이상 100 이하의 정수) // 2. 둘째 줄부터 N개의 각 줄에는 2차원 배열의 첫 번째 행부터 N번째 행까지 순서대로 한 행씩 높이 정보가 입력된다. // 3. 높이는 1이상 100 이하의 정수이다. ////출력 : //첫째 줄에 장마철에 물에 잠기지 않는 안전한 영역의 최대 개수를 출력한다. int n; int arr[100][100]; int visited[100][100]; int dx[4] = {0,0,1,-1}; int dy[4] = {1,-1,0,0}; priority_queue<int> safeAreas; void dfs(int y, int x, int height){ //방문처리 visited[y][x] = true; //4방향 탐색 for(int i=0; i<4; i++){ int nx = x + dx[i]; int ny = y + dy[i]; //탐색 x 조건 if( y < 0 || x < 0 || y >= n || x >= n ) continue; // out of bound if( visited[ny][nx] ) continue; if( arr[ny][nx] <= height ) continue; //물에 잠긴 지역 // 방문 dfs(ny,nx,height); } } // find connected graphs int getSafeAreaCnt(int height){ memset(visited, 0, sizeof(visited)); int connected = 0; for(int i=0; i<n; i++){ for(int j=0; j<n; j++){ if(!visited[j][i] && arr[j][i] > height ){// 방문하지 않았고, safe area dfs(j,i, height); connected++; } } } return connected; } int main() { //입력 cin >> n; string input; int maxHeight=0; for(int i=0; i<n; i++){ for(int j=0; j<n; j++){ cin >> arr[j][i]; maxHeight = max( maxHeight , arr[j][i] ); // 1. 높이의 max 값을 구한다. } } for(int height=0; height <= maxHeight; height++){ safeAreas.push( getSafeAreaCnt( height ) ); } cout << safeAreas.top() << '\n'; } https://www.acmicpc.net/problem/2468안녕하세요 큰돌님. segmentation fault 나는데 어디서 나는지 잘 모르겠습니다 ㅠ priority queue 때문인 거 같은데 한 번 더 확인 해보겠습니다.