묻고 답해요
169만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
이전 강의와 수업 자료가 동일한 것 같습니다.
두 강의가 다 알고리즘_문제해설 pdf 파일이라 (각 8/21, 8/16일 자) 알고리즘 교안pdf 파일이 제대로 업로드가 되지 않은 것 같습니다. 확인 부탁드립니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-I, 결과값에 대한 질문입니다
visited[turn % 2][nx] = visited[(turn + 1) % 2][x] + 1; 이렇게 해주는 부분이 있는데, 결과는 turn 을 출력하는게 조금 헷갈립니다실제로 확인해보니 turn 과 visited[turn%2][k]-1 이 서로 값이 다르기도 하구요혹시 이유를 알 수 있을까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-I 질문 있습니다.
저의 처음 접근방식은 아래와 같았습니다.공간 복잡도를 줄여야 하기 때문에 2차원 배열로 모든 것을 나타낼 수는 없다.동생의 위치는 점화식으로 표현할 수 있다. Bro(t) = Bro(t - 1) + t 0에서 출발해도 1000초 뒤면 500500에 도착하므로 배열의 크기는 1000이면 충분하다.수빈이가 특정 좌표에 도착한 시간을 기록해두고, 이 시간을 이용해 동생의 위치와 비교한다면 찾아낼 수 있지 않을까?그러나 이는 틀렸고, 강사님의 강의를 보고 수빈이가 먼저 도착한 경우를 빼먹었다는 걸 알았습니다. 그리고 이를 보완해 아래와 같은 코드를 작성하였습니다.http://boj.kr/9ca6697bc05c4e72b0e9a7cf5ef1a703하지만 여전히 틀렸더군요. 강사님의 강의를 마저 보고 풀긴 했습니다만, 제가 위 코드에서 빼먹은 부분이 무엇인지 감이 잡히지 않아 질문 드립니다. 🙏
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-A 질문 있습니다.
저도 min함수를 떠올려서 비교하기위해서는 result를 적당한 값으로 초기화를 해놔야된다고 생각하였는데 강사님께서는 987654321으로 초기화를 해두었던데 그렇게 하신 이유가 있으실까요?제가 문제를 풀다보니 초기값을 잘못 고르면 마이너스 값으로 출력되어버릴때도 있던데 어떻게 초기값 기준을 잡으면 되는지 잘 감이 잡히지 않습니다. 명확하게 딱 떨어지는 값도 이 문제에서는 없어 보이고요..
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
3-G 와 백준 컴파일러에 대한 질문이 있습니다
https://www.acmicpc.net/source/82778585해당 풀이를 통해 정답을 맞혔는데요몇 가지 조건에 따라 오답과 정답이 나뉘는 현상이 있어서 이와 관련하여 강사님 의견을 여쭙고 싶습니다const int MAX 를 선언할 때 정수 크기에 따라 백준에 입력했을 때 결과가 다르게 나옵니다크게 차이나게 입력한 것은 아니고요200,000 이랑 200,002 를 입력해봤는데 200,002 은 정답이고, 200,000 은 오답으로 나오네요그리고 int n, k; 와 int visited[MAX], cnt[MAX]; 이 두 라인을 서로 변경했을 시 또 결과가 다르게 나옵니다int n, k; 를 나중에 선언해야 정답으로 나오더라구요그런데 int n, k; 를 먼저 선언해도 되는 경우가 있습니다int visited[MAX], cnt[MAX]; 이 부분에 MAX 뒤에 정수를 더해주면 int n, k; 를 먼저 선언해도 되었습니다아무리 고민해도 짐작 가는 부분이 없는데 강사님의 의견을 듣고 싶습니다
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-Q 질문있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.go 함수에서 계속 탐색을 하다가 처음으로 1을 만나면 그 좌표를 넣고 멈추게 되면 가장자리에 있는 모든 1의 좌표가 v에 담기는게 아니라 그냥 처음으로 만난 좌표 1개만 v에 담기게 되는거 아닌가요? 어떻게 go 함수가 지울 모든 치즈 좌표가 담기게 되는지 이해가 안 됩니다..ㅜ
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
16234 질문입니다!
16234번 테스트 케이스는 다 맞는데, 채점시에는 % 조금넘어가다가 바로 틀리는데, 어디가 틀렸는지 도저히 모르겠어서 질문드립니다. http://boj.kr/741c9846e8eb45d59f29b0a85fa3cfe9 그리고 선생님 풀이코드를 봤는데, 전역스코프에있는 벡터 v사용하시는데 dfs 파라미터에 넣으신 이유가 있을까요?? 이 질문을 드린게 함수 파라미터에서 '&'를 이용한 참조에 의한 전달을 하는 방식은 함수 파라미터에 해당 자료구조를 명시하지 않아도 상위 스코프를 순차적으로 순회하면서 동일한 이름의 자료구조를 발견하면 알아서 참조해서 사용한다고 알고있어서 그랬습니다.만약 값 전달이 목적이라면 (전역단에 빈 자료구조 'ds'생성)ds ds;func (param1, param2, ds) {~~}int main() { while (1) func(~~); ~~}이런식으로 함수를 정의하면 반복되는 로직에서 func를 부를 때 ds를 비워주는(fill, memset, clear, ...) 로직을 수행하지 않고 코드를 작성할 수 있을것 같은데, 이렇게 매번 빈 자료구조를 사용하는 로직에서는 값전달방식이 나을까요 아니면 그냥 무조건 참조 + flush가 나을까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
2-S 재질문 드립니다 :)
안녕하세요 선생님 🙂이전에 풀었던 문제들을 전부 다시 풀어보는 중입니다. 다시 풀어보니 이전에는 안보였던 부분들이 보이기 시작하더라구요.2가지 질문이 있습니다. http://boj.kr/2560aa9844964379b8e8c4b30e917888 위의 풀이는 visited배열을 사용하지 않고 풀이한 방법입니다. 1부터 5까지 놓여있는 테스트케이스만 놓고 생각해보면 visited배열로 방문처리를 안하더라도 겹치는 인덱스가 없습니다. 따라서 방문처리를 안하는 것이 오히려 낫다라는 생각을 했는데요, 시간초과가 되었습니다. 이유가 무엇인지 모르겠어서 질문 드립니다. http://boj.kr/10e79d578a2c4aefbfd07995bdb94025 위의 풀이는 temp배열을 사용하지 않고 풀이한 방법입니다. temp배열을 선언하지 않고 그 자리에 DFS(i)를 넣어도 결과는 같을 것이라고 생각했지만, for문에서 DFS(i)를 출력하면 1번 인덱스부터 N번 인덱스까지 전부 1이 나오더라구요. 아무리 생각해도 이해가 되지가 않습니다.조언 부탁드립니다..!!
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
unique_ptr 질문
unique_ptr의 경우 왕관 뺏기 게임을 만든다고 할 때 사용할 수 있을까요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-L 문제 예외처리 질문있습니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강의에 예외처리로 0 을 출력하도록 되어 있는데 출력문 대신 return 0; 으로 해도 상관없는지 궁금합니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
4-B질문 드립니다
http://boj.kr/1768eef2fba64e16bc9bbbca272a7caa 우선 모든 경우의수가 2*N이니 1~2^2*N까지 반복시킨후에각 경우의수마다 어떤 행과 열을 뒤집을지 고르는 방식으로 진행했습니다. 이게 경우의수가 너무 커서 틀린거지 로직은 맞을까요??아니면 로직도 바꿔야할지 궁금합니다.
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
컴퓨터 사양
데스크탑 컴퓨터 사려고 하는데 게임개발자는 어느정도 사양의 컴퓨터를 구매하는게 좋을까요? 추천해주시는게 있을까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
질문있습니다!
큰돌님 혹시 이거는 왜 warning이 뜨는건가요??
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part5: UE5 & IOCP 서버 연동
52분에 나온 얘기..
52분에 나온 레플리케이션, RPC 등등 지난번에 했다라는게[입문자를 위한 UE5] Part4. 언리얼 엔진 C++에서 언리얼 네트워크 파트를 말하는 것인지 아니면 다른 어떤 강의를 말씀하시는건지.. 이 네트워크 파트에서 데디서버도 설명을 하는건가요? 데디서버도 궁금해서요... c++ part4 서버강의 들었고 언리얼로 서버 연동을 안하고 컨텐츠만 만들어봤는데 UE5 소스코드 분석 시리즈 #2 (네트워크) 이 강의 바로 들어도 상관없을까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
긍정왕 홍철이의 구걸 여행 다른 코드 관련 질문
#include<bits/stdc++.h> using namespace std; int dy[]={-1, 0, 1, 0}; int dx[]={0, 1, 0, -1}; int visited[3][3]; int m[3][3]; vector<pair<int,int>> v; int n, ny, nx; void print() { for(auto i : v) cout << m[i.first][i.second] << " "; cout << "\n"; } void go(int y, int x) { if(y == n - 1 && x == n - 1) { print(); return; } for(int i = 0; i < 4; i++) { ny = y + dy[i]; nx = x + dx[i]; // 제약 조건 if(ny >= n || nx >= n || ny < 0 || nx < 0 || visited[ny][nx]) continue; visited[ny][nx] = 1; v.push_back({ny, nx}); // 다음 경로 탐색 go(ny, nx); // 원상 복구 조건 visited[ny][nx] = 0; v.pop_back(); } } int main() { n = 3; for(int i = 0; i < n; i++) { for(int j = 0; j < n; j++) { cin >> m[i][j]; } } visited[0][0] = 1; v.push_back({0, 0}); go(0, 0); return 0; } 이건 제가 작성한 긍정왕 홍철이의 구걸 여행 코드입니다.10 20 2170 90 1280 110 120 이렇게 사용자 입력을 받았는데 결과가 인강처럼 여러개가 나오지 않고10 20 21 12 12010 20 21 12 90 110 12010 70 10 20 21 12 120딱 이 3가지만 나오는데 도저히 코드의 문제점을 모르겠습니다. 왜 그런건가요?
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
완탐-원복-그래프 정점 탐색 코드 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. #include<bits/stdc++.h> using namespace std; int visited[4]; vector<int> adj[4]; //** vector<int> v; void print(){ for(auto i:v)cout<<i<<" "; cout<<"\n"; } void go(int from){ visited[from]=1; // 색칠하려고 했는데, 만약 // 사이즈 체크는 겉에서 말고, 들어오고 나서 하는듯 // 1. 기저 조건 if(v.size()==3){ print(); v.pop_back(); int rear=v.back(); go(rear); } // 2. for(auto i:adj[from]){ if(visited[i])continue; v.push_back(i); go(i); } } int main() { // 양방향 간선을 가정한다 adj[0].push_back(1); adj[1].push_back(0); adj[1].push_back(2); adj[1].push_back(3); adj[2].push_back(1); adj[3].push_back(1); v.push_back(0); go(0); } 이건 정답 코드를 보기 전에 제가 작성한 코드인데 어떤 문제점이 존재하는지 알 수 있을까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-K 맞왜틀 질문입니다
안녕하세요, 1213번(1-K번) 맞왜틀 질문이 있어 질문 올립니다.마땅한 반례를 제 시간에 떠올리지 못해, 반례에 대한 힌트를 얻을 수 있을까 하여 질문 드립니다. 코드는 아래와 같습니다.http://boj.kr/556e9aa7a033414a80ac86819811d8a7입력된 string의 각 알파벳을 Key, 각 알파벳 개수를 value로 하는 map을 이용하여 풀어보려 했습니다.입력된 string의 각 알파벳 및 알파벳 개수를 _nr_char이라는 map에 저장한 후,_nr_char의 value가 홀수인 것(_odd_nr로 count합니다)이 2개 이상이면 I'm Sorry Hansoo를 출력하게 했고,홀수인 것이 1개라면 29번 라인으로,홀수인 것이 없다면 56번 라인으로 분기하여 처리합니다. 29번 라인은 _nr_char에 저장된 알파벳을 output2란 string에 차례대로 저장한 후,홀수 알파벳을 output2에 마지막으로 push_back으로 저장합니다.이후 output2를 대칭복사한 output를 출력합니다. 56번 라인은 _nr_char에 저장된 알파벳을 output2란 string에 차례대로 저장한 후,output2를 대칭복사한 output를 출력합니다. string을 다루는 부분이 다소 정돈되지 못하여 이해가 어려우실 수 있을 것 같습니다. 양해 부탁드립니다.
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
a.cpp로 바꾸고 명령어 실행해도 안되네요ㅠ
-
해결됨10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
질문이 있습니다.
http://boj.kr/591d5d47a8284b3ea0f2cc2424f2796a저는 이렇게 풀었는데... 이번에도 역시 반례가.... 모르겠습니다. ㅠㅠ 혹시 시간 괜찮으시면 답변하나 부탁드려도 될까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-K 1213 펠린드롬 질문있습니다.
http://boj.kr/d01d9b144442469eae778012296cc3e1해당 코드가 반례가 뭔지 도저히 모르겠습니다.번거로우시겠지만 한번 부탁드려도 될까요?