게시판 인덱스

 
 FAQFAQ   검색검색   멤버리스트멤버리스트   사용자 그룹사용자 그룹   사용자 등록하기사용자 등록하기 
 개인 정보개인 정보   비공개 메시지를 확인하려면 로그인하십시오비공개 메시지를 확인하려면 로그인하십시오   로그인로그인 

hw2 ex3 질문입니다.
페이지로 1, 2  다음
 
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2007)
이전 주제 보기 :: 다음 주제 보기  
글쓴이 메시지
하재승
손님





올리기올려짐: 2007년9월20일 9:22    주제: hw2 ex3 질문입니다. 인용과 함께 답변

문제 정의가 조금 모호한 거 같습니다.

1. 모든 subtree의 root는 "|"이고 그 가지의 중앙에 있다.

가지의 중앙이라는게 그 아래 두 child tree의 root로부터 중앙이라는 것인가요?

2. 왼쪽과 오른쪽 subtree의 깊이가 다른 경우에
코드:

    |
 |-----|
높     |-|
이     | |
가     | |
4임    | |

    |
 |-----|
높      |
이      |
가      |
4임    |-|


어느 형태를 우선시합니까?
위로
정영범



가입: 2005년 9월 5일
올린 글: 167

올리기올려짐: 2007년9월21일 15:53    주제: 인용과 함께 답변

1. 예 맞습니다.
2. complete binary tree의 정의를 보시기 바랍니다. Very Happy
A binary tree in which every level, except possibly the deepest, is completely filled. At depth n, the height of the tree, all nodes must be as far left as possible.

예로 든 경우는 complete binary tree가 아닙니다.
위로
사용자 정보 보기 비밀 메시지 보내기 이메일 보내기 글 올린이의 웹사이트 방문
하재승
손님





올리기올려짐: 2007년9월22일 1:59    주제: 인용과 함께 답변

음 주어진 문제로부터 complete binary tree 일꺼라고 전혀 생각을 못했네요.

인용:
일반적인 게임 대진표는 완전한 이진 나무구조입니다.


라고만 되어있지, 주어진 tourna가 complete binary tree라는 조건이 문제에 없네요.

1. 그럼 주어진 tourna가 항상 complete binary tree라고 가정해야 합니까?

그리고 그 경우에도 제가 말한 경우의 문제는 발생할 것 같습니다.
코드:

      |
   |-----|
 |---|   |
|-| |-| |-|

      |
   |-----|
 |---|  |-|
|-| |-| | |


2. 어느 경우를 선호해야합니까?

추가) 혹시나 해서 아래 글의 답변을 봤더니 2-2 에서도 결과물이 complete binary tree가 되어야 한다는 것이군요. 그러면 "탈락"의 의미를 벗어나지 않나요? 저는 한 경기에서 승부가 결정되서 한 팀이 나가는 경우라고 이해했었는데요..
위로
정영범



가입: 2005년 9월 5일
올린 글: 167

올리기올려짐: 2007년9월22일 14:10    주제: 인용과 함께 답변

인용:
1. 그럼 주어진 tourna가 항상 complete binary tree라고 가정해야 합니까?


1. 예 맞습니다.
2. 예로 든 두 나무는 모두 아래와 같이 그려져야 합니다.
코드:

      |
   |-----|
 |---|  |-|
|-| |-| 


인용:

추가) 혹시나 해서 아래 글의 답변을 봤더니 2-2 에서도 결과물이 complete binary tree가 되어야 한다는 것이군요. 그러면 "탈락"의 의미를 벗어나지 않나요? 저는 한 경기에서 승부가 결정되서 한 팀이 나가는 경우라고 이해했었는데요..


탈락의 의미는 그 팀을 제외하고 대진표를 새롭게 구성하라는 것입니다. 항상 대진표를 새롭게 짠다고 생각하세요.
위로
사용자 정보 보기 비밀 메시지 보내기 이메일 보내기 글 올린이의 웹사이트 방문
남기웅
손님





올리기올려짐: 2007년9월22일 14:33    주제: 인용과 함께 답변

한 팀이 탈락했을 경우, 대진표를 새로 짠다는 것이 잘 이해가 되지 않습니다.

대진표라는 것이 단순히 팀들의 나열이 아니고, 토너먼트의 tree구조가 있는 것인데, 한 팀이 탈락했을 경우 원래의 구조를 무시하고 새로운 토너먼트를 짜라는 말씀이신지요?

예를 들어서 A, B, C, D, E, F, G 7개의 팀의 토너먼트가 처음에는

____|_____
___|__ __|__
| | | |
A - B C - D E - F G

이런 식이었는데, C 팀이 탈락했다고 합시다. 그럼 남은 대진표의 구조는 complete binary tree가 아니게 되지요. 이 때 대진표를 완전히 새롭게 바꾸어서 complete binary tree가 되도록 해야 한다는 말씀이신지요?

문제에서 '새롭게 구성되는 대진표'를 출력하라고 했으므로, 원래의 대진표에서 한 팀이 탈락했을 때의 (이것도 애매한 면이 있는데, 그 팀이 첫 번째 경기에서 졌다고 가정하고) 대진표를 구하는 것이 의미가 있지 않을까 싶습니다.
위로
남기웅
손님





올리기올려짐: 2007년9월22일 14:36    주제: 인용과 함께 답변

위의 대진표가 이상하게 됐네요.

( ( (A, B), (C, D) ), ( (E,F), G) ) 단순히 이런 7개 팀의 대진표입니다.

여기서 C나 D를 빼게 되면, 트리의 구조 자체가 comlete binary tree로는 표현될 수 없다는 것을 말씀리는 것입니다.
위로
김홍준



가입: 2007년 9월 16일
올린 글: 16

올리기올려짐: 2007년9월23일 2:45    주제: 인용과 함께 답변

정영범 씀:

2. 예로 든 두 나무는 모두 아래와 같이 그려져야 합니다.
코드:

      |
   |-----|
 |---|  |-|
|-| |-| 



그런데 왜 문제에 있는 예제 나무 모양은 왜
코드:

   |
 |---|
|-|

가 아니라
코드:

   |
 |---|
|-|  |

가 되는 건가요?
인용:

모든 잎새 노드들은 맨 밑에 있다.

의 정확한 의미가 궁금합니다.
잎새 노드가 기하학 적으로 가장 아래줄에 위치해야하는 건가요 아니면 트리 방향이 아래로 갈수록 잎새에 가까워짐을 만족하기만 하면 되는 건가요?
위로
사용자 정보 보기 비밀 메시지 보내기
정영범



가입: 2005년 9월 5일
올린 글: 167

올리기올려짐: 2007년9월23일 14:27    주제: 인용과 함께 답변

제가 답변을 잘못했습니다. Crying or Very sad

문제에 나와있는
인용:
잎새노드들은 모두 맨 밑에 있다.

는 잎새 노드들을 모두 맨 아래줄에 위치해야 한다는 뜻이라고 생각합니다.

따라서
코드:

      |
   |-----|
 |---|  |-|
|-| |-| | |

하재승 학생이 질문하신 그림의 답은 위의 그림이 되어야 합니다.

그리고, 탈락의 의미도 주어진 대진표에서 한 팀이 경기에 졌을 때 구성되는 대진표를 출력하는 것이 맞습니다.

혼란스럽게 해드린 점 죄송합니다.
위로
사용자 정보 보기 비밀 메시지 보내기 이메일 보내기 글 올린이의 웹사이트 방문
하재승
손님





올리기올려짐: 2007년9월23일 19:36    주제: 인용과 함께 답변

탈락이 그런식으로 생각되게 되면 3번 문제의 입력에 꼭 complete binary tree이여야한다는 조건도 살짝 의심스럽네요;
코드:
       |
   |-------|
 |---|   |---|
|-|  |  |-|  |

이런것도 충분히 대진표로서는 납득할만한 것 같은데

3번의 입력이 complete binary tree라는 조건은 그대로 인건가요?
위로
이우석
손님





올리기올려짐: 2007년9월25일 20:54    주제: 탈락의 의미에 대해 인용과 함께 답변

탈락의 의미는 한팀이 승부에서 졌을 때를 의미한다고 하셨는데요, 그렇다면 부전승으로 올라간 팀이 탈락하면 어떤 모양의 대진표가 형성되나요? 부전승으로 올라가 있는 팀은 질 상대가 없는데요. 예를들어,

( (A, B) C) 에서 C가 탈락한다면 그냥 (A, B)로 보면 되는건가요?
위로
김홍준



가입: 2007년 9월 16일
올린 글: 16

올리기올려짐: 2007년9월29일 5:39    주제: tree를 그리는 조건에 대해서 인용과 함께 답변

tree의 폭을 넉넉하게 잡고 문제에 주어진 조건을 만족하는 tree를 그려주기만 하면 되나요? 아니면 꼭 tree의 가로폭을 최소화 시켜서 tight 하게 그려야 되나요?

전자의 경우 간단한 traversal과 계산으로 node의 위치를 파악 가능하지만, 후자의 경우는 제가 여러시간 동안 고민해봐도 복잡한 자료구조를 유지하면서 여러차례 트리 순환을 해야만 구현이 될것 같네요.

예를 들자면

정영범 씀:

코드:

      |
   |-----|
 |---|  |-|
|-| |-| | |

하재승 학생이 질문하신 그림의 답은 위의 그림이 되어야 합니다.


위의 경우
코드:

       |
   |-------|
 |---|   |---|
|-| |-|  |   |


이런 식으로 그려도 문제의 조건에는 맞으므로 상관 없지 않나 하는 것입니다.

tree의 폭을 최소한으로 계산해서 그려야 한다면
문제에 나와있는
코드:

   |
 |---|
|-|  |


코드:

  |
 |-|
|-||

으로 그려야 되는 것이 맞겠네요.


김홍준 가 2007년9월29일 6:31에 수정함, 총 1 번 수정됨
위로
사용자 정보 보기 비밀 메시지 보내기
김진산



가입: 2006년 9월 13일
올린 글: 45

올리기올려짐: 2007년9월29일 6:27    주제: 인용과 함께 답변

왜 저는 leaf 사이의 간격(whitespace)은 1이상으로 하며,

간격은 최소한으로 줄인다.


라는 이상한 규칙을 아무생각없이 만들고, 이 때문에 고생했을까요. ㅠ_ㅠ


ps. 그냥. 푸념입니다. ㅠ_ㅠ

화이팅~
위로
사용자 정보 보기 비밀 메시지 보내기 글 올린이의 웹사이트 방문 MSN 메신저
김홍준



가입: 2007년 9월 16일
올린 글: 16

올리기올려짐: 2007년9월29일 6:28    주제: 인용과 함께 답변

음 아무리 아무리 밤을 세워 생각해봐도 문제가 명확하지 않으면 풀기가 어려울것 같네요 ㅠㅠ

명확한 조건제시가 필요합니다.


위의 조건을 다시한번 생각해보면
아래와 같은 모양의 경우

1)
코드:

    |
  |---|
 |-| |-|
|-|| | |


2)
코드:

     |
   |---|
 |---||-|
|-|  || |


3)
코드:

      |
   |-----|
 |---|  |-|
|-|  |  | |


4)
코드:

       |
   |-------|
 |---|   |---|
|-|  |   |   |


4가지의 그림형를 생각해 볼수 있습니다.
폭을 최소로 할경우 1)의 그림과 같은 형태가되고 폭을 최소로 하되 보기좋게 LEAF 노드들간의 공간을 최소 1칸을 띄어주면 주면 3)과같은 형태가 됩니다. 이럴 경우 난이도가 굉장히 올라가게 되고요,
노드폭의 제약 조건이 없다면 4)와 같이 구현이 가능할 것이고 비교적 어렵지 않게 구현이 가능하리라 보입니다.

정확히 어떤 그림형태로 나와야 맞는 것인지요..
위로
사용자 정보 보기 비밀 메시지 보내기
김병호
손님





올리기올려짐: 2007년9월29일 10:40    주제: 트리 모양 인용과 함께 답변

너무들 복잡하게 생각하시는 것이 아닌지
문제에 써 있는대로 세가지 조건만 만족하면서 아름답기만 하면 된다고 생각합니다.
아름다운 한에서 쉬운 방법으로 구현하면 되지 않을까요?
전 김홍준님의 4번 방법도 충분히 아름다워 보입니다.
위로
하재승
손님





올리기올려짐: 2007년9월29일 19:07    주제: 인용과 함께 답변

나에게 아름다운게 남에게 아름답지 않을수 있는게 문제겠지요 Smile

이왕이면 조건이나 기준이 명확한게 서로 혼란스럽지 않으니까요.
위로
이전 글 표시:   
이 게시판은 잠겼으므로 글을 올리거나, 답변을 하거나 수정을 할 수 없습니다   이 주제는 잠겼으므로 답변을 하거나 수정을 할 수 없습니다     게시판 인덱스 -> 4190.310 Programming Languages (Fall 2007) 시간대: GMT + 9 시간(한국)
페이지로 1, 2  다음
페이지 12

 
건너뛰기:  
새로운 주제를 올릴 수 없습니다
답글을 올릴 수 없습니다
주제를 수정할 수 없습니다
올린 글을 삭제할 수 없습니다
투표를 할 수 없습니다


Powered by phpBB 2.0.21-7 (Debian) © 2001, 2005 phpBB Group
Translated by kss & drssay