본문 바로가기
728x90

Problem Solving103

[백준] 10866 덱 python 알고리즘 문제 문제 10866. 덱 1. 나의 코드와 발상 과정 import sys from collections import deque n = int(input()) queue = deque() answer = [] for _ in range(n): order = sys.stdin.readline().strip() if order[0:10] == 'push_front': queue.append(int(order[11:])) elif order[0:9] == 'push_back': queue.appendleft(int(order[10:])) elif order[0:9] == 'pop_front': if not queue: answer.append(-1) else: answer.append(queue.pop()) eli.. 2022. 4. 24.
[백준] 10845 큐 python 알고리즘 문제 문제 10845. 큐 1. 나의 코드와 발상 과정 import sys from collections import deque n = int(input()) queue = deque() for _ in range(n): order = sys.stdin.readline().strip() if order[0:4] == 'push': queue.appendleft(int(order[5:])) elif order[0:5] == 'front': if not queue: print(-1) else: print(queue[-1]) elif order[0:4] == 'back': if not queue: print(-1) else: [print(queue[0])] elif order[0:4] == 'size': print.. 2022. 4. 24.
[백준] 10828 스택 python 알고리즘 문제 문제 10828. 스택 1. 나의 코드와 발상 과정 import sys n = int(input()) queue = [] for _ in range(n): order = sys.stdin.readline().strip() if order[0:4] == 'push': queue.append(int(order[5:])) elif order[0:3] == 'top': if not queue: print(-1) else: print(queue[-1]) elif order[0:4] == 'size': print(len(queue)) elif order[0:5] == 'empty': if len(queue) == 0: print(1) else: print(0) else : if not queue: print(-1).. 2022. 4. 24.
[백준] 1436 영화감독 숌 python 알고리즘 문제 문제 1436. 영화감독 숌 1. 나의 코드와 발상 과정 doom_list = [] i = 0 while True: if '666' in str(i): doom_list.append(i) i += 1 if len(doom_list) == 10000: break print(doom_list[int(input())-1]) 일단 문제에 대한 이해가 살짝은 필요했다. 반복되는 6이 세번 있으면 그 숫자를 영화의 제목으로 쓰는 것이다. 1편부터 쓰는 영화의 제목에 들어갈 수는 다음과 같다. 666, 1666, 2666, 3666, 4666, 5666, ... 6편까지는 앞자리 숫자가 바뀌는데, 7번째부터 숫자가 바뀐다. 6660, 6661, 6662, 6663, ... 6666, ... 6669, 7666, .... 2022. 4. 24.
[백준] 1181 단어 정렬 python 알고리즘 문제 문제 1181. 단어 정렬 1. 나의 코드와 발상 과정 n = int(input()) word_list = [] for i in range(n): word_list.append(str(input())) word_list = list(set(word_list)) ## attribute error word_list.sort() word_list.sort(key = lambda x : len(x)) for word in word_list: print(word) 잘 돌아가는 코드이다. word_list를 만들어서 그 안에 입력값들을 저장하고, set() 즉, 집합을 활용해서 중복 원소들을 털어내버리고, sort()로 알파벳 순 정렬을 한 다음에, 문자열 길이를 기준으로 해서 또 정렬을 해준다. 그런 다음 프린트.. 2022. 4. 24.
[백준] 10814 나이순 정렬 python 알고리즘 문제 10814. 나이순 정렬 1. 나의 코드와 발상 과정 # 정답 (4092ms) n = int(input()) member_list = [] for i in range(n): member_list.append(list(input().split())) member_list.sort(key = lambda x: int(x[0])) for i in range(n): print(member_list[i][0], member_list[i][1]) # 런타임 에러(IndexError) n = int(input()) member_list = {} for i in range(n): age, name = list(map(str, input().split())) member_list[name] = int(age) s1.. 2022. 4. 24.
728x90