디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

횽들 나좀 구해주세요 ㅠㅠㅠㅠㅠ

컴터학생(121.163) 2010.10.06 22:17:08
조회 134 추천 0 댓글 0


컴퓨터공학부에 재학중인 학생임 ㅠㅠ

프로그램을 짜다 하두 안되서.. 횽들한테 요청해봐요

 

기본적으로 Knight Tour 프로그램을 짜는겁니다.

인터넷상에서 Recursive 로 구현하는 소스가 많아서 Recursive 로 구현하는건 문제가 없었지만,

이것을 Non-Recursive 형태로 구현하라는 과제 입니다...

학생스스로 노력해서 과제를 해야되지만,
이틀동안 매달렸는데 결국 못하고 있어 ㅠㅠㅠㅠㅠ

 

 

기존의 Recursive 형태를 스택과 트리형태로 구현하여 짜보았는데,,, 무한루프스핀 ㅠㅠ

이렇게 짜는면 안되는건지,  도움좀줘영ㅇ 형들 ㅠㅠ

 

 

 

-------------------------------------------------------------------------------------

 

[Recursive]

 

int knightTour (int m, int n, point pos, int counter){
 int i;
 point next;

 if(counter == m * n)
  return 1;

 for(i = 0; i < 8; i++){
  // 다음 포지션
  next.x = pos.x + direction[i].x;
  next.y = pos.y + direction[i].y;
  if ( next.x > 0 && next.x <= n &&
    next.y > 0 && next.y <= m &&
    board[next.y][next.x] != MARK )
  {
   board[next.y][next.x] = MARK;
   path[next.y][next.x] = counter+1;

   if ( knightTour(m, n, next, counter+1) )
    return 1;
   
   board[next.y][next.x] = UNMARK;
  }
 }

 return 0;
}

 

 

-------------------------------------------------------------------------------------

 

[Non-Recursive - 안되네요 ㅠ]

 

int knightTour_nonRecursive (int m, int n, point pos){
 
 int result = 0;
 int counter = 1;

 point next;
 position current;
 current.x = pos.x;
 current.y = pos.y;
 current.dir = 0;

 for(int i = current.dir; i < 8; ){
  // 다음 포지션
  next.y = current.y + direction[i].y;
  next.x = current.x + direction[i].x;

  if( next.x > 0 && next.x <= n && next.y > 0 && next.y <= m && board[next.y][next.x] != MARK ){
   
   current.dir = i;
   // 스택에 해당 위치와 이동방향 저장
   stackPos.push(current);
   temp = current;
   // 이동
   current.x = next.x;
   current.y = next.y;

   board[next.y][next.x] = MARK;
   path[next.y][next.x] = ++ counter;

   if(counter == m * n){
    cout << "42break"<< endl;
    break;
   }else
    i = 0;
  }else if(i == 7){
   while(1){
    board[next.y][next.x] = UNMARK;
    path[next.y][next.x] = 0;
    counter --;
    current = stackPos.top();
    stackPos.pop();
    i = current.dir + 1;

    if(i > 7)
     continue;
    else
     break;
   }
  }else{
   
   i ++;
  }
  
 }
 
 if(counter == m * n)
  result = 1;

 return result;
}

 

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 시세차익 부러워 부동산 보는 눈 배우고 싶은 스타는? 운영자 24/05/27 - -
218571 오랜만에 병신력 폭발하는구만 [8] 콜라맛사탕(211.202) 10.11.17 102 0
218570 잘해줄생각없으면 그냥 댓글 달지말던가 [1] ㄱ됴뵤(119.194) 10.11.17 64 0
218569 아진짜 디시가 원래 이런곳이냐 [2] ㄱ됴뵤(119.194) 10.11.17 70 0
218568 왜 위험한지 설명좀 [2] ㄱ됴뵤(119.194) 10.11.17 68 0
218567 조언좀 구해볼려는애한테 막말이나 하는애한테 욕하는데 왜? [4] ㄱ됴뵤(119.194) 10.11.17 86 0
218566 cyluss 얘가 나인줄 어찌알겠어 [3] ㄱ됴뵤(119.194) 10.11.17 80 0
218565 cyluss 이새끼 무서워서 학교 가겠냐 ㅅㅂ [8] ㄱ됴뵤(119.194) 10.11.17 124 0
218564 아키텍쳐하고 개발자하고 수준이 많이 차이나나염? 마타버터갤로그로 이동합니다. 10.11.17 68 0
218563 cyluss 이새낀 먼데 깝치냐 [4] ㄱ됴뵤(119.194) 10.11.17 94 0
218562 C발람아 C는 다른 공부하느라 때려쳤다 우짤래 [6] ㄱ됴뵤(119.194) 10.11.17 121 0
218560 컴공에 붙었는데요 형님들 방학동안 뭐할까요? [10] ㄱ됴뵤(119.194) 10.11.17 183 0
218559 아 시발 수능 이틀보면 안됨? [10] 엄마오분만여갤로그로 이동합니다. 10.11.17 87 0
218558 장은성님 프로젝트 잘 진행되고 있는 듯 [2] 분당살람갤로그로 이동합니다. 10.11.17 104 0
218557 유동닉 66.197 님 ㄹㄷㄱㄹㄴ 님 정말 감사합니다 사올2갤로그로 이동합니다. 10.11.17 44 0
218556 원래 이렇게 책임 전가가 심한건가? [8] 씬입.(114.206) 10.11.17 141 0
218554 스마트폰이란게 정확히 머임? [5] 아굴(113.59) 10.11.17 78 0
218553 1.시작한다 [4] 유리한추종자(120.50) 10.11.17 100 0
218551 신종플루하고 감기하고 차이가 머냐? [5] 김늅늅(218.153) 10.11.17 68 0
218550 횽들 채팅 테스트 같이 좀 하자~~ [8] (121.159) 10.11.17 114 0
218549 형들 C++ 링크드 리스트 말인데. [4] C++(121.150) 10.11.17 273 0
218548 ATCIS병 1차합격함ㅋ [26] 회전매니아갤로그로 이동합니다. 10.11.17 846 0
218547 시마과장이 이런 내용인 줄은 몰랐다 -_- [1] (175.196) 10.11.17 110 0
218545 형들 C# ㅠㅠ 폼값전달받기 [2] 123(175.116) 10.11.17 149 0
218543 야 꼬장왕하고 홍어 너네 둘이 배틀한번 떠봐라 밤맛밤(211.202) 10.11.17 40 0
218542 c 라이브러리 함수 질문!!!! [2] 강만갤로그로 이동합니다. 10.11.17 70 0
218541 아 낼 수능보는놈들 날 따뜻해서 좋겠다 [4] 엄마오분만여갤로그로 이동합니다. 10.11.17 96 0
218538 오늘 음악중심 소녀시대 방송사고 ㅋㅋㅋ [15] 엄마오분만여갤로그로 이동합니다. 10.11.17 227 0
218537 내생각엔 성공한 프로그래머가 되기위한 가장 첫번째 덕목은 홍어(58.180) 10.11.17 87 0
218535 과장님 이야기 [3] 유리한갤로그로 이동합니다. 10.11.17 116 0
218534 나도 과장님 이야기 [1] (175.196) 10.11.17 107 0
218532 뚫 드립 치지 마라 [2] prismatic갤로그로 이동합니다. 10.11.17 85 0
218531 Tiles 쓸줄아시는 분~ 손목(112.154) 10.11.17 38 0
218529 혹시 아이폰 예제 잘 되어있는 사이트 없을까여 [1] 써니덕후갤로그로 이동합니다. 10.11.17 196 0
218528 안드로이드 개발자 구합니다. [1] monoless갤로그로 이동합니다. 10.11.17 89 0
218527 아 한시간을 더 생각했는데도 못하겠네; [7] 자바(175.121) 10.11.17 105 0
218526 아휴 빡쳐 [3] monoless갤로그로 이동합니다. 10.11.17 78 0
218525 집안에서 걸어다니는데 바람소리가 들려 [5] cyluss갤로그로 이동합니다. 10.11.17 74 0
218524 이런 프로그램 만들려면 C가 좋아 자바가 좋아? [11] 최군(123.142) 10.11.17 151 0
218523 야 나도 프로그래밍 언어하나 만들어 보고 싶다. [3] 꼬장왕(210.16) 10.11.17 84 0
218522 onepare횽// 이거 된거지? 순서만 바꾸고 해봤는데.. [1] 헌터(180.227) 10.11.17 48 0
218521 웹사이트 구축하는거랑 네트워킹은 다른거여? [1] ㅋㅋㅋ(220.73) 10.11.17 55 0
218519 니들이 자바를 두려워하는이유 [4] 홍어(58.180) 10.11.17 109 0
218518 횽들 인트라넷 같은 사이트 제작할려면 어느정도 실력이 되야해? [8] 최군(123.142) 10.11.17 97 0
218515 이거 버블정렬인데.. 좀 봐주 [4] 헌터(180.227) 10.11.17 88 0
218514 아아아아아앙아아아아아아아아아아아 [2] 다람쥐v갤로그로 이동합니다. 10.11.17 76 0
218512 (프갤에 올리는 과장님 이야기) [4] 해일리갤로그로 이동합니다. 10.11.17 101 0
218508 자바 망했으면 좋겠다. [13] 꼬장왕(210.16) 10.11.17 139 0
218507 (프갤에 올리는 팀장님 이야기) [7] 해일리갤로그로 이동합니다. 10.11.17 115 0
218506 컴터용 의자 종결자 [3] 분당살람갤로그로 이동합니다. 10.11.17 155 0
218503 일주일만에 다시 PC를 사용하기 시작했는데 [4] 분당살람갤로그로 이동합니다. 10.11.17 92 0
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2