5-P 질문
514
작성한 질문수 17
안녕하세요 큰돌님!
톱니바퀴문제를 풀고 예제는 전부 통과하는데
다른 반례에서 막히고 있습니다.
혹시 어떤 반례가 있을까요??
톱니바퀴의 관계를 bool배열로 정의해서
ture라면 톱니바퀴를 돌리는 방식을 사용하였습니다
코드에 주석처리 하였습니다!
http://boj.kr/d8998b04abf748559932e676c3b4447e
답변 1
1
안녕하세요 sol님 ㅎㅎ
대략적으로 잘 짜신 거 같아요ㅎㅎ
sync를 기반으로 i, i + 1 지점을 돌 수 있다라는 배열을 이용한점.
회전로직을 잘구축한점.
로직 자체가 매끄럽고 좋네요.
다만,
void DFS(int idx, int d){
if(idx < 0 || idx >= n) return;
visited[idx] = 1;이거 idx에 대한 상한, 하한점을 잡아주는 로직이 필요합니다.
int n,k,ret, gear[1004][8],synced[1001], visited[1004];visited 배열을 8로 잡으셨더라구요. 이 톱니바퀴의 최대 범위는 1000까지 되죠? 1004정도로 잡으셔야 합니다.
이부분이요.
void Solve(){
for(auto p : v){
check(); // 톱니바퀴 상태확인
memset(visited, 0, sizeof(visited));
DFS(p.first - 1, p.second);
} for(auto p : v){
memset(visited, 0, sizeof(visited));
memset(synced, 0, sizeof(synced));다음코드처럼 sync 또한 초기화를 해주 부분이 필요해요. 상단에 놓으시면 됩니다.
앞서 지적한 부분을 고쳐서 제출해보시겠어요?
수정된 코드 : http://boj.kr/0ed0b658bdf341ef9824516baad55224
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제가 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.
코딩 살구 클럽 컴파일 에러
0
4
1
추천 문제
0
7
1
코딩살구클럽 승인
0
9
1
코살구 1주차 1940번 문제 조건과 프라이빗 테스트 불일치 문의
0
21
2
문제를 고민하는 시간 관련
0
26
2
코딩살구클럽
0
38
2
코딩살구클럽 문의
0
37
2
코딩살구클럽 승인
0
35
2
DP 경우의 수 설명이 이해가 되지 않습니다.
0
33
2
3-F 채점 관련 질문
0
31
1
BFS, DFS 활용이 되는 상황에서의 방향성
0
33
2
코딩살구클럽 승인
0
45
2
코딩살구클럽승인
0
39
3
코딩살구클럽 승인
0
54
2
3-D 관련 질문
0
35
2
코살구 회원가입 문의
0
45
2
코살구 로그인 문제
0
65
2
3-A 문제 풀이 관련 질문
0
56
3
2-O 질문 있습니다
0
38
2
2-T 문제에 관한 질문
0
40
2
코딩 살구 클럽 접속 및 사용방법 문의
0
63
2
안녕하세요~. 현재 코살코딩클럽 사이트가 접속이 안됩니다~
0
67
2
코딩살구클럽 로그인문제
0
85
3
코딩 살구 클럽 로그인 문제
0
86
2





