[SWEA] 5658. [모의 SW 역량테스트] 보물상자 비밀번호

2024. 5. 18. 23:48·Study/Algorithm
728x90

문제

  • 접근 방법
  • 정답 여부

접근 방법

1. queue 자료구조를 활용해서 회전마다 popleft를 횟수마다 해주고 다시 빼낸 것을 append하여 회전 때마다의 리스트를 구한다.
2. 그 후 list를 잘라서 해당 숫자를 join 해 문자열로 만들어서 set 자료구조에 넣어서 중복이 없도록 한다.
3. 해당 set을 리스트로 바꾸고 16진수를 10진수로 변경한다.
4. 내림차순으로 sort한 후, K번째 수를 빼낸다.

코드

from collections import deque
T = int(input())
for test_case in range(1, T+1):
    N, K = map(int, input().split())
    lst = list(input())

    n_set = set()
    count = N // 4
    for i in range(count):
        q = deque(lst)
        for _ in range(i):
            temp = q.popleft()
            q.append(temp)
        temp_list = list(q)

        for i in range(0, len(temp_list), count):
            n_set.add("".join(temp_list[i:i + count]))
    n_list = list(n_set)
    final_list = []
    for i in n_list:
        final_list.append(int(f'0x{i}', 16))
    final_list.sort(reverse=True)
    print(f'#{test_case} {final_list[K-1]}')

정답 여부

  • 정답!!
  • 16진수를 10진수로 변경하는 부분과 배열을 자르는 부분에서 잠시 헷갈렸다 ㅜㅜ
728x90
반응형
저작자표시 (새창열림)

'Study > Algorithm' 카테고리의 다른 글

[백준 11660] 구간 합 구하기 5  (2) 2024.08.21
[baekjoon] 세탁소 사장 동혁(2720)  (0) 2024.05.31
[SWEA] 2001. 파리퇴치  (0) 2024.05.18
[SWEA] 1954. 달팽이 숫자  (0) 2024.05.17
[SWEA]1244. [S/W 문제해결 응용] 2일차 - 최대 상금 (python)  (0) 2024.05.17
'Study/Algorithm' 카테고리의 다른 글
  • [백준 11660] 구간 합 구하기 5
  • [baekjoon] 세탁소 사장 동혁(2720)
  • [SWEA] 2001. 파리퇴치
  • [SWEA] 1954. 달팽이 숫자
pink_salt
pink_salt
유익함을 주는 개발자가 되도록 keep going
  • pink_salt
    KeepGoingForever
    pink_salt
  • 전체
    오늘
    어제
    • 분류 전체보기 (117)
      • Project (7)
      • WEB study (3)
        • WEB(Springboot) (10)
        • Git, GitLab (13)
        • Clean code (1)
        • FrontEnd (3)
      • Study (21)
        • Algorithm (19)
        • 면접 준비 (2)
      • Cloud Computing (2)
        • AWS (2)
      • 프로그래밍 언어 (35)
        • Java (29)
        • Python (0)
        • javascript (6)
      • 운영체제 (0)
        • Linux (0)
      • Database (4)
        • MongoDB (8)
        • SQL (8)
      • 애플리케이션 개발 (1)
        • Android (1)
      • AI (1)
        • Deeplearning (1)
        • machinelearning (0)
      • Daily (0)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    BFS
    gitlab
    git branch
    Java
    코딩강의
    mysql
    MongoDB
    codepresso
    SW
    python
    Git
    코딩이러닝
    언어
    대외활동
    SWEA
    자바
    IT교육
    spring boot
    dp
    빅오표기법
    오블완
    객체지향
    개념
    무료IT교육
    Database
    무료코딩교육
    티스토리챌린지
    백준
    코드프레소
    Query
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
pink_salt
[SWEA] 5658. [모의 SW 역량테스트] 보물상자 비밀번호
상단으로

티스토리툴바