개미의 개열시미 프로그래밍

[알고리즘] 이코테 구현 문제풀이 - 파이썬 본문

알고리즘/그리디 & 구현

[알고리즘] 이코테 구현 문제풀이 - 파이썬

YunHyeok 2021. 7. 29. 16:53
728x90
반응형

이코 테의 강의 중반부터 구현에 대한 문제를 세 개 정도 풉니다. 먼저 bfs, dfs문제를 풀어서 그런지 어렵지 않았고 모르면 빨리 답을 보고 이해했습니다.

 

https://www.youtube.com/watch?v=2zjoKjt97vQ&list=PLRx0vPvlEmdAghTr5mXQxGpHjWqSz0dgC&index=2 

 

1. 시각

# 가능한 모든 시각의 경우를 하나씩 모두 세서 풀 수 있는 문제
# 하루는 86,400초 -> 24 * 60 * 60
# 완전 탐색(Brute Frocing)문제 유형
n = int(input())

count = 0

for i in range(n+1):
    for j in range(60):
        for k in range(60):
            # 매 시각 안에 '3'포함되면 카운트 증가
            if '3' in str(i)+str(j)+str(k):
                count += 1

print(count)

 

2. 왕실의 나이트

n = input() # 나이트의 위치 입력받기
row = int(n[1]) # 행
col = int(ord(n[0])) - int(ord('a')) + 1 # 열은 문자라서 숫자로 변환

steps = [(-2, -1), (-1, -2), (1, -2), (2, -1), (2, 1), (1, 2), (-1, 2), (-2, 1)]

result = 0
for step in steps:
    next_row = row + step[0]
    next_col = col + step[1]
    if next_row >= 1 and next_row <= 8 and next_col >= 1 and next_col <= 8:
        result += 1

print(result)

 

3. 문자열 재정렬

text_input = input()
list = []
total = 0

for i in text_input:
    if i.isalpha():
        list.append(i)
    else:
        total += int(i)

list.sort()

if total != 0:
    list.append(str(total))

print(''.join(list))

 

오늘부터 다시 코테공부시작!!  빨리빨리..

728x90
반응형
Comments