TanzDev

TIL 37 (알고리즘 문제) 본문

기록보드/TIL

TIL 37 (알고리즘 문제)

Tanz-dev 2024. 3. 13. 07:46

from collections import deque

def card_2(n):
    card = deque(range(1, n+1))
   
    while len(card) > 1:        
        pop_card = card.popleft()
        move_card = card.popleft()
        card.append(move_card)
   
    return card[0]

n = int(input())
result = card_2(n)
print(result)

 

덱, 큐, 우선순위 큐에 대해 특강이 있었다.

실버문제이지만 덱을 쓰면 쉽게 풀리는 문제였다.

 

arr = [1, 2, 3, 100, 99, 98]

def solution(arr):
    answer = []
    for i in arr:
        if i >= 50 and i % 2 == 0:
            answer.append(i // 2)
        elif i <= 50 and i % 2 != 0:
            answer.append(i * 2)
        else:
            answer.append(i)
    return answer

answer = solution(arr)

print(answer)

조건에 맞게 수열 변환하기 1

 

arr = [1, 2, 3, 100, 99, 98]
k = 3

def solution(arr, k):
    answer = []
    if k % 2 == 1:
        answer = [num_list * k for num_list in arr]
    else:
        answer = [num_list + k for num_list in arr]
    return answer

answer = solution(arr, k)
print(answer)

조건에 맞게 수열 변환하기 3

 

슬슬 알고리즘주차 1일째부터 재복습이 들어가야할거같다.

'기록보드 > TIL' 카테고리의 다른 글

TIL 39 (알고리즘 문제)  (1) 2024.03.14
TIL 38 (알고리즘 문제)  (0) 2024.03.13
TIL 36 (알고리즘 문제)  (0) 2024.03.11
TIL 35 (백준 코드카타 2)  (0) 2024.03.11
TIL 34 (백준 코드카타)  (0) 2024.03.10