https://softeer.ai/practice/info.do?idx=1&eid=626&sw_prbl_sbms_sn=111569
Softeer
연습문제를 담을 Set을 선택해주세요. 취소 확인
softeer.ai
단순 구현문제인데... 시간이 많이 걸림
dictionary에 넣은 뒤, 하나씩 빼면서 출력,,,
import sys
from collections import defaultdict
n, m= map(int, input().split())
meeting_name = defaultdict()
# 9-10-11-12-13-14-15-16-17-18
meeting_res_list = [[0 for _ in range(9)] for _ in range(n)]
for i in range(n):
room_name = input()
meeting_name[room_name] = i
for _ in range(m):
name, start, end = input().split()
for i in range( int(start)-9, int(end)-9):
meeting_res_list[meeting_name[name]][i] = -1
meeting_name_sorted = (sorted(meeting_name.keys()))
total_cnt = 0
for key in meeting_name_sorted:
print(f"Room {key}:")
cnt = 0
arr = []
m_key = meeting_name[key]
times = ''
flag = False
for meet in range(9):
if not flag and meeting_res_list[m_key][meet] == 0:
flag = True
if meet == 0:
times += "09"
else:
times += str(meet+9)
times += '-'
elif flag and meeting_res_list[m_key][meet] == 0:
continue
elif flag and meeting_res_list[m_key][meet] == -1:
times += str(meet+9)
arr.append(times)
times = ''
flag = False
cnt += 1
if flag:
times += "18"
arr.append(times)
cnt += 1
if cnt == 0:
print("Not available")
else:
print(f"{cnt} available:")
for time in arr:
print(time)
total_cnt+=1
if total_cnt < n:
print("-----")
'Algorithm > softeer' 카테고리의 다른 글
[파이썬]softeer: 전광판 (0) | 2023.01.27 |
---|---|
[파이썬]softeer: 비밀 메뉴 (0) | 2023.01.26 |
[파이썬]softeer: 바이러스 (0) | 2023.01.25 |
[파이썬]softeer: 금고털이 (1) | 2023.01.23 |
댓글