월 33,000원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-J 코드 질문입니다.
안녕하세요 강사님! 강의 너무 잘 듣고 있습니다!제가 짠 코드랑 강사님 코드랑 좀 다르지만 답은 맞다고 뜨는데, 이렇게 풀이해도 큰 문제 없는지 여쭤보고 싶어서 코드 올려봅니다.http://boj.kr/5a5e290d48434a57a34847c066b4de7b
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
답은 맞았는데, 이상한 부분이 있어서 질문드려요
http://boj.kr/a12c58c1df11493f8ba78847feffa3b9 선생님, 안녕하세요~완전탐색(재귀방식)으로 해서 어떻게 답을 맞췄습니다.처음에는 dp테이블에 동전이 n개일때 경우의 수를 저장해야겠다고 생각하고 코드를 짜보았지만, 뭔가 잘 되지않아dp[34][34] 이런식으로 남은 w가 n개, h가 m개일때 경우의 수를 저장하게 하는 방식으로 해서 통과하였습니다.그런데 이상한 점은, 한번 dp방식으로 해서 답을 맞췄으면, 그 다음 입력때도 이전에 저장된 dp테이블에 있는 값을 그대로 이용해서 답을 맞출 수 있을 줄 알았는데,이전에 저장된 dp테이블을 이용하면 다른 답이 나와서, 입력을 할 때마다 dp테이블을 초기화 해주는 방식을 사용하고 있습니다.음,, 어떤 부분때문에 이렇게 나오는 걸까요??
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2- I segmentation fault
안녕하세요 선생님 해당 코드는 정답코드입니다. 그러나 제가 주석처리한부분으로 코드를 짰을때는 segmentation error가 나와서 그 이유를 여쭤보고 싶습니다.또한 선생님께서는 size()를 사용하셨고 저는 length()를 사용했는데 size()와 length()의 장단점도 알고싶습니다 http://boj.kr/df71a1d8b94a49cca8ed3d2cbb104d78감사합니다
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
안녕하세요! 버퍼 플러싱 관련하여 질문드립니다.
교안 32p에 cin을 사용해서 반복횟수를 입력 받고 getline을 사용시에 정수 입력 => 엔터 => 문자열 입력의 흐름이 되고 cin은 개행문자 전까지 입력을 받기 때문에 버퍼에 \n이 남아서 버퍼 플러싱이란걸 해야 함으로 이해했습니다. 그리고 버퍼플러싱이 임시저장소인 버퍼의 데이터를 프로그램에서 사용하기 위해 영구저장소로 가져가는 것임도 확인했습니다. 이 과정에서 2가지 여쭙고싶습니다. 위의 문제로 입력 버퍼에 개행 문자가 남아있다면 이후에 데이터를 입력할 때 남아있는 개행문자에 걸려서 오류가 날 것으로 생각합니다. 그래서 따로 남아있는 개행문자를 처리해야되는 것으로 이해했습니다. 제가 이해한게 맞는지 궁금합니다!32p의 버퍼 플러싱 코드에서string bufferflush; getline(cin, bufferflush);의 코드로 남아있는 개행문자를 버퍼 플러싱 해주는것으로 사료되는데, 위 코드가 어떤 원리로 남아있는 개행문자를 처리해주는지 이해가 가지않습니다.. ㅠ
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-D (백준2573 영역구하기) 백터사용시 메모리 초과
안녕하세요!(질문글 올리다가 제코드를 다시보니 왜 메모리초과가 나는지.. 알게돼서 글쓴게 아까워서 정보공유차 남깁니다)요즘 코딩테스트에 vector를 넘겨받는 케이스가 많아서연습삼아 함수인자로 vector를 넘겨주는 방식으로 문제를 풀고있습니다. 전역배열로 문제를 풀면, 메모리초과가 안나는데, vector를 넘기니 메모리초과가 발생하네요. ----------- 함수 선언은 아래와 같이 했습니다.-----void dfs(vector<vector<int>> map, vector<vector<int>>& visited, int x, int y, int num)----------------------------원인 ) 재귀호출하면서 매번 map이 복사가 되면서 메모리를 잡아먹는게 원인 이였습니다. & 참조 연산 붙여주니 바로 통과되네요. 다른 분들은 이런 실수 안하시길.. 수정) void dfs(const vector<vector<int>>& map, vector<vector<int>>& visited, int x, int y, int num)교안대로 전역변수쓰는게 확실히 실수를 줄여줘서 좋긴하지만 이것도 좋은 경험이라고 생각하고 넘어가게습니다.
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-L 주몽문제 시간초과 관련 질문입니다 ㅠ
https://www.acmicpc.net/source/share/bc46fa452bbf42209281c4b2e3220c39 이 코드가 솔루션에서는 잘 돌아가는 데,백준에서는 시간초과라고 뜹니다 뭐가 문제인지 알 수 있을까요??
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
재귀 함수에 어떻게 접근해야 하는지 잘 모르겠습니다.
재귀함수를 사용해서 문제 풀이를 할 때 어떤 식으로 접근해야 할 지 팁을 주실 수 있나요?예를 들어, 종료조건을 반드시 설정해야 하고 이에 대해 먼저 생각하고 들어가는 건 알겠습니다. 그러나 어느 부분을 재귀시킬지에 대한 감이 아직 잘 없는 것 같아요.어느 부분을 재귀 시켜야 하는지랑, 그 외의 팁이 있으면 좀 받고싶습니다.외워서 푸는건 되는데 이해는 아직 안돼요
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3 - J 주난의 난 질문있습니다,,
http://boj.kr/2b8f07db284d4502b563683fdd715549 테스트 케이스하고 다른 질문 글 반례도 통과합니다.기본적으로 bfs에 0을 만나면 visited에 1을 증가 안해줬고 1을 만나면 증가해줬습니다. 영상 잘 보고 있습니다,, 근데 너무 어려워요 ㅠㅠㅎㅎ
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
algorithm헤더의 sort
교안 p.88과 p.92에 각각 캡처한 사진입니다.두 설명 모두 sort (cmp없이) 를 설명하고 있습니다. first에서 동일한 값이 나오면 second를 기준으로 오름차순 정렬을 진행하는 것으로 알고 있고 실습도 해봤습니다. (아래 실습) #include <bits/stdc++.h> using namespace std; int main() { vector<pair<int, int>> v = { {5, 1}, {2, 2}, {5, 3}, {3,4}, {2, 5} }; sort(v.begin(), v.end()); for (auto it : v) cout << "(" << it.first << ", " << it.second << ")" << "\n"; return 0; } /* (2, 2) (2, 5) (3, 4) (5, 1) (5, 3) */ 따라서 (2,5) -> (2,2) 순으로는 나올 수 없을 것으로 판단했습니다.어느 부분이 잘못됐는지 알고싶습니다~!
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-C 질문있습니다!
안녕하세요 선생님 😃 대부분의 코드는 이해하였지만, ret값이 1이 아닌 0이라면 오답처리가 되더라구요. 어차피 max함수를 사용하면 ret값이 ret과 cnt 중 더 큰 값으로 바뀔텐데요, 테케도 올바른 출력 값을 가져오는데 무슨 차이가 있는건지 알려주시면 감사하겠습니다 :)
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-J 질문 있습니다!
안녕하세요 선생님, 사소한 궁금증이 두가지 생겨 질문 드립니다.1.선생님이 전역변수가 유리하다고 말씀해주셨는데 이번에는 지역변수로 map을 선언하셨습니다. 저는 전역변수를 이용해 선언 후 선생님의 while문 맨 아래에서 clear시켜주는 방식을 사용했습니다. 이런 상황에서는 지역변수로 해주는 것이 복잡도 등의 측면에서 더 효율적이라 그렇게 하신건가요? 아니면 그저 취향 차이인가요? 2.이 문제에서는 공백을 두고 들어오는 두 문자열 중 앞의 문자열은 사용하지 않습니다. 이런 상황에서 선생님 풀이처럼 두 문자열에 대해 변수를 모두 선언해서 각각 받을 수 있지만 저는 아래와 같이 한 변수만 설정하여 연속으로 입력받는 방식을 습관처럼 사용하고 있습니다.cin >> tmp >> tmp;이부분 또한 취향차이인지, 더 나은 것이 있는지 궁금합니다.감사합니다.https://www.acmicpc.net/source/share/91fe4435e46b418ba58f13a0844b382e
- 해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-T 17298번-오큰수 질문
안녕하세요 큰돌 선생님. 수업을 열심히 듣고 있는 학생입니다.정답이 틀려서 질문했다기보단 강의를 보기 전에 스스로 풀었는데 저는 우선순위 큐를 사용해서 풀었습니다. 맞추고 나서 기분이 좋은 상태로 선생님 강의를 봤는데 스택으로 푸셨더라고요.이런 방법도 있구나~ 하면서 어떻게 푸셨는지 로직을 보는데 이게 왜 되는지 오랜 시간 생각을 해봐도 논리? (스택 방식으로 푸는게 왜 유효하고 문제가 없는건지)를 모르겠습니다. ㅜㅜ우선순위큐로 푸는 상황에서는 현재 가르키고 있는 인덱스의 값보다 작은 값의 모든 우선순위큐 안에 있는 인덱스들을 pop을 한다고 확신을 하겠는데 스택은 확신이 안 듭니다예를 들면 스택안에 현재 인덱스가 가르키는 값보다 작은 값의 인덱스들은 저장을 하며 pop을 하다가 더 큰 값 인덱스를 만나서 while문을 멈췄는데 그 밑에 그러니까 더 일찍 들어온 애들 중에 pop을 해야 하는 애가 있는 상황이 있을까봐 저는 스택이 아닌 우선순위 큐부터 써본 것 같습니다. 이렇게 딱 스택을 써도 문제가 없겠다. 즉 위 같은 상황이 안 생기겠다! 라는 생각이 드는 논리를 알고 싶습니다. 그리고 이렇게 논리를 생각해야하는 문제들을 어떻게 대비해야하는지 여쭤보고싶습니다. 제가 머리가 나쁜지 한 10분 생각을 해봐도 스택이 왜 문제가 없는지 아직도 깨닫지 못했습니다 ㅠㅠ이런 논리를 생각해내지 못해서 손도 못댄 문제들이 있습니다. 풀어보셨는지는 모르겠지만 프로그래머스에 요격 시스템이라는 문제는 비슷한 이유로 제대로 풀지 못해서 결국 남의 코드를 봤습니다. 밑에는 우선순위 큐로 푼 코드입니다http://boj.kr/88988bf1465247cea240603121ec5ae7
- 해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
당근마켓 엔지니어 문제 BFS 코드 질문
안녕하십니까 큰돌님제가 강의 보기 전에 당근마켓 엔지니어 문제를 혼자 코드로 작성했었는데뭐가 문제인지 모르겠습니다입력에서 무한루프에 빠지는 왜 빠지는 거 같은데 모르겠습니다 ...http://boj.kr/d57fe9c1c85b4938bc642528ab607f2e그리고 n이 세로, m이 가로이면 반복문에서 n과 m의 위치가 제 코드처럼 바껴야 하는 거 아닌가요 ??
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-R 트리 질문있습니다.
안녕하세요! 좋은 강의 들려주셔서 감사합니다!큰돌님 풀이와 dfs를 쓴다는 점에서 크게 다른 것 같지 않은데, 채점이 잘 진행되다가 77% 정도에서 틀렸다고 뜹니다. 많이 생각해 봤지만, 반례가 어떤게 있는지 찾을 수 없어 질문드립니다!http://boj.kr/387ac0e3a8b644d298eb49bf40165f33
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-B 유기농 배추 질문있습니다
안녕하세요 선생님 🙂 아무리 봐도 선생님이 푸신 풀이와 제가 푼 풀이의 차이점이 없는거 같은데요, 테케는 전부 올바른 답으로 출력되지만 오답으로 나옵니다 ㅠㅠ 왜 그런지 모르겠어서 질문드립니다!http://boj.kr/7871d7ec89b646a69ae96f413011ea9b 그리고 만약에 fill함수가 떠오르지 않는다면 이중for문으로 배열을 초기화하는 방법을 사용해야할 것 같은데요, 시간복잡도 측면에서 손해를 보게 되는지 아닌지 알려주시면 감사하겠습니다!
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-B 유기농 배추 질문있습니다
안녕하세요 선생님 🙂 아무리 봐도 선생님이 푸신 풀이와 제가 푼 풀이의 차이점이 없는거 같은데요, 테케는 전부 올바른 답으로 출력되지만 오답으로 나옵니다 ㅠㅠ 왜 그런지 모르겠어서 질문드립니다!http://boj.kr/7871d7ec89b646a69ae96f413011ea9b그리고 만약에 fill함수가 떠오르지 않는다면 이중for문으로 배열을 초기화하는 방법을 사용해야할 것 같은데요, 시간복잡도 측면에서 손해를 보게 되는지 아닌지 알려주시면 감사하겠습니다 :)
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-F 어느부분이 틀렸는지 모르겠습니다!
스크린을 배열로 만들어서 바구니가 있는 곳은 1, 없는 곳은 0으로 두고, 바구니가 움직이지 않아도 되는 경우, 사과가 바구니 오른쪽에 떨어지는 경우, 왼쪽에 떨어지는 경우로 나누어서 만들어봤습니다!가독성이 떨어지지만 한 번 봐주시면 감사하겠습니다.http://boj.kr/e2e2ca2d3a5d4f728a8ca93048c010f4
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-A. 문제가 왜 틀렸는지 모르겠습니다
http://boj.kr/bc50e94cb11649708526317af568f56e이렇게 코드를 짜고, 예제1도 제대로 돌아가는데 어디서 왜 틀렸는지를 잘 모르겠습니다. ㅜㅜ 그리고 저는 조합만 생각했었는데, 왜 순열로도 풀이를 하시는지 이해가 잘 안됩니다. 순열은 순서가 중요하다고 알고있는데, 현재 여기서는 순서가 아무 상관 없지 않나요? 조금만 더 자세히 설명 해주시면 감사하겠습니다그리고, 2:03 부분 쯤에 순열을 가리키시면서 순서에 상관 없이 뽑는다고 하시는 부분이 이해가 안됩니다.
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
간단한 질문이 있습니다.
보통 백준을 풀거나 다른 사람의 코드를 참고할때답 마지막에 "\n" 개행을 적는 이유가 뭔가요??보통 백준 제출하면 안적어도 답이 맞는데 잘하시는 분들 보면 마지막에 개행을 거의 넣더라구요예를 들어 출력이 5가 나오면 답인데cout << "5" << "\n" 이렇게 제출하던데 이유가 있나요??코테에서도 개행을 적는게 좋을까요?
- 미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
문제로 해결하는 시간복잡도 4번 질문이 있습니다.
우선, 1. cnt를 찍으며 여러가지 케이스를 도출한 다음 -> 2. (시간이 있다면) 점화식 만들고 / 일반적으로는 어림 잡아서 -> 3. 규칙을 찾아 식으로 만든 후 빅 오 표기법으로 표시한다이런 식으로 복잡도를 구하면 될까요?? 그리고 해당 문제에 대해서는요,저같은 아주 초보자가 복잡도가 Log 랑 관련있겠다 는 걸 아예 감도 못잡고 예제를 통해 규칙을 찾아내고자 3, 6, 15 등...2의 제곱이 아닌 수를 입력하는 경우가 있을 수도 있잖아요. 그럼 더 헷갈릴 것 같은데, 선생님께서는 애초에 2의 제곱을 cin으로 입력 하시면서 규칙을 찾아내시더라구요. 혹시 2의 제곱 수들을 넣어서 예시 값 들을 도출해 내신 이유가 /2 때문인가요?? /= 2 로 나오는 것들의 예시 값들을 도출해 낼 때는 log를 염두 해 두면 될까요??