백준 2116. 주사위 쌓기

2024. 11. 21. 16:40·백준

https://www.acmicpc.net/problem/2116

import sys
input = sys.stdin.readline

n = int(input())
dice = [list(map(int, input().split())) for _ in range(n)]

rotate = {0: 5, 1: 3, 2: 4, 3: 1, 4: 2, 5: 0} # 앞뒤 쌍을 딕셔너리 형태로 저장
sum_list = [] # 사이드 주사위 값들의 최댓값들을 저장하는 리스트

for i in range(6): # 첫 번째(맨아래)주사위 정하는 경우의 수 = 6번
    max_dice_list = []
    bottom_dice = [1,2,3,4,5,6]

    bottom_side = dice[0][i] # 첫번째 주사위 - 아래의 주사위 값
    upper_side = dice[0][rotate[i]] # 첫번째 주사위 - 위의 주사위 값

    bottom_dice.remove(bottom_side)
    bottom_dice.remove(upper_side)

    max_dice_list.append(max(bottom_dice)) # 첫번째 주사위 - 위, 아래 주사위 값 제외 가장 큰 값 저장

    for j in range(1, n):
        next_dice = [1,2,3,4,5,6]
        bottom_side = upper_side # 이전 주사위의 위 주사위 값 = 지금 주사위의 아래 주사위 값

        upper_side_index = rotate[dice[j].index(bottom_side)] # 아래 주사위 값으로 위 주사위 인덱스 구하기
        upper_side = dice[j][upper_side_index] # 위 주사위 인덱스 값으로 위 주사위 값 구하기

        next_dice.remove(bottom_side)
        next_dice.remove(upper_side)

        max_dice_list.append(max(next_dice)) # 위, 아래 주사위 값 제외 가장 큰 값 저장

    sum_list.append(sum(max_dice_list)) # 사이드 주사위 최댓값들을 모두 더한 값을 리스트에 저장

print(max(sum_list))

- 맨아래(첫번째) 주사위의 위or아래를 결정하면 나머지 주사위들은 자동으로 확정됨!

- 힌트보고 맨위(마지막)주사위 제외 다 6으로 맞추고 곱하려고 했는데 구현을 못해서 실패...^^

- 맨아래(첫번째) 주사위의 위or아래를 결정하는 경우의 수가 6이니까 시간 충분했다.

저작자표시 (새창열림)

'백준' 카테고리의 다른 글

백준 11657. 타임머신  (0) 2024.11.25
백준 1446. 지름길  (0) 2024.11.23
백준 2169. 로봇 조종하기  (0) 2024.11.21
백준 2437. 저울  (0) 2024.11.20
백준 15686. 치킨 배달  (0) 2024.11.19
'백준' 카테고리의 다른 글
  • 백준 11657. 타임머신
  • 백준 1446. 지름길
  • 백준 2169. 로봇 조종하기
  • 백준 2437. 저울
버그잡는고양이발
버그잡는고양이발
주니어 개발자입니다!
  • 버그잡는고양이발
    지극히평범한개발블로그
    버그잡는고양이발
  • 전체
    오늘
    어제
    • 분류 전체보기 (383) N
      • React (16)
      • Next.js (5)
      • Javascript (5)
      • Typescript (4)
      • Node.js (2)
      • Cs (16)
      • 트러블 슈팅&리팩토링 (6) N
      • Html (1)
      • Css (3)
      • Django (0)
      • vue (0)
      • Java (2)
      • Python (0)
      • 독서 (1)
      • 기타 (3)
      • 백준 (192)
      • swea (31)
      • 프로그래머스 (30)
      • 이코테 (4)
      • 99클럽 코테 스터디 (30)
      • ssafy (31)
      • IT기사 (1)
  • 블로그 메뉴

    • 홈
    • 태그
  • 인기 글

  • 태그

    개발자취업
    99클럽
    코딩테스트준비
    항해99
    Til
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
버그잡는고양이발
백준 2116. 주사위 쌓기
상단으로

티스토리툴바