java-ladder

LadderGame

  • 사다리 게임에 사람이 참여한다.
  • 사람은 2 ~ 10 명 까지 참여 할 수 있다.
  • 사다리 타기가 정상적으로 동작하려면 라인이 겹치지 않도록 해야 한다.
    • |-----|-----| 모양과 같이 가로 줄이 겹치는 경우 어느 방향으로 이동할지 결정할 수 없다.

Ladder

  • 사다리 구조
    • 연결 정보(Bridge)를 갖고 있다.
    • 높이는 1 이상 10 이하여야 한다.
  • 동작
    • 연결 정보를 생성한다.

🖐️ 변경될 여지가 있는 정책은 상수 처리했습니다!

Bridge

  • 연결 정보
    • 연결된 2개의 위치
      • 두 위치는 인접해야 한다.
    • 높이 (y축)
      • 0 이상

Name

  • 사람 이름
    • 이름은 1~5글자
    • 영어, 숫자만 허용

🖐️ 변경될 여지가 있는 정책은 상수 처리했습니다!

Names

  • 사람 이름을 모은 일급 컬렉션
    • 중복된 이름은 존재하지 않아야 함

InputView

  • 사람 이름 입력
    • 사람 이름은 쉼표(,)를 기준으로 구분한다.
    • 이름 내 공백은 모두 지움 (ex: '망 쵸 , 마 크' -> '망쵸,마크' )
    • 이름 간의 공백은 지움 (ex: '망쵸 , 마크' -> '망쵸,마크' )
  • 최대 높이 입력
    • 1~10 사이의 숫자

🖐️ 비즈니스 밀접하지 않은 정책 View에서 담당합니다!

  • Ex) 이름 내 공백은 모두 지움

OutputView

  • 이름을 출력한다.
  • 사다리를 출력한다.
    • 가로 줄의 길이는 5이다.

실행 결과 예시

참여할 사람 이름을 입력하세요. (이름은 쉼표(,)로 구분하세요)
pobi,honux,crong,jk

최대 사다리 높이는 몇 개인가요?
5

실행결과

pobi  honux crong   jk
    |-----|     |-----|
    |     |-----|     |
    |-----|     |     |
    |     |-----|     |
    |-----|     |-----|