[Coding Test]
[백준] 12605 파이썬(python) : 단어순서 뒤집기
https://www.acmicpc.net/problem/12605 12605번: 단어순서 뒤집기 스페이스로 띄어쓰기 된 단어들의 리스트가 주어질때, 단어들을 반대 순서로 뒤집어라. 각 라인은 w개의 영단어로 이루어져 있으며, 총 L개의 알파벳을 가진다. 각 행은 알파벳과 스페이스로만 www.acmicpc.net import sys n = int(sys.stdin.readline()) for i in range(1, n+1): #1 string = list(sys.stdin.readline().split()) #2 string.reverse() #3 print('Case #' + str(i) + ':', end=' ') #4 print(*string) #5 #1 : 숫자 i를 출력하기 위해서 1부터 n+..
[백준] 2841 파이썬(python) : 외계인의 기타 연주
https://www.acmicpc.net/problem/2841 2841번: 외계인의 기타 연주 첫째 줄에 멜로디에 포함되어 있는 음의 수 N과 한 줄에 있는 프렛의 수 P가 주어진다. (N ≤ 500,000, 2 ≤ P ≤ 300,000) 다음 N개 줄에는 멜로디의 한 음을 나타내는 두 정수가 주어진다. 첫 번째 정수 www.acmicpc.net import sys n, p = map(int, sys.stdin.readline().split()) melody = [ list(map(int, sys.stdin.readline().split())) for _ in range(n) ] #1 cnt = 0 guitar = [ [] for i in range(7) ] #2 for line, plot in me..
[백준] 17608 파이썬(python) : 막대기
https://www.acmicpc.net/problem/17608 17608번: 막대기 아래 그림처럼 높이만 다르고 (같은 높이의 막대기가 있을 수 있음) 모양이 같은 막대기를 일렬로 세운 후, 왼쪽부터 차례로 번호를 붙인다. 각 막대기의 높이는 그림에서 보인 것처럼 순서대로 www.acmicpc.net 처음 문제를 보고 맨 오른쪽 높이를 설정하고 높이대로 잘라서 위 부분 볼 수 있는 숫자를 출력해야지라고 생각했는데 아니었다. 테스트 케이스는 문제없는데 맞왜틀.. 이러고 있었다. 697946 같은 경우에 오른쪽에서 볼때 가장 오른쪽 6과 높이가 9인 막대기 2개만 보여야 하는데 view = stick[i]을 하지 않으면 979 세개가 cnt에 추가되어서 오답처리를 받는다. 그래서 높이 갱신이 필요하다...
[백준] 5397 파이썬(python) : 키로거 - 이중stack
https://www.acmicpc.net/problem/5397 5397번: 키로거 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한줄로 이루어져 있고, 강산이가 입력한 순서대로 길이가 L인 문자열이 주어진다. (1 ≤ L ≤ 1,000,000) 강산이가 백스페이스를 입 www.acmicpc.net 커서를 이동하는 부분에서 이전에 풀었던 1406번(에디터) 문제가 생각났다. 왼쪽으로 커서를 움직일때 다른 스택에 가장 위 값을 넣고 커서를 오른쪽으로 옮기면 다른 스택에서 원래 스택으로 다시 옮겨오는 방식이다. 이렇게 하면 append와 pop만 사용하기 때문에 O(1)로 문제를 해결할 수 있다. import sys t = int(sys.stdin.readline()) for _ in r..
[백준] 3986 파이썬(python) : 좋은 단어
https://www.acmicpc.net/problem/3986 3986번: 좋은 단어 이번 계절학기에 심리학 개론을 수강 중인 평석이는 오늘 자정까지 보고서를 제출해야 한다. 보고서 작성이 너무 지루했던 평석이는 노트북에 엎드려서 꾸벅꾸벅 졸다가 제출 마감 1시간 전에 www.acmicpc.net 처음에 문제를 볼때 이걸 어떻게 스택으로 풀 수 있지 생각했는데 이전에 풀었던 괄호 짝 맞추기 문제들 처럼 같은 알파벳끼리 짝을 맞춰주면 풀 수 있다. 문제에서는 아치형 곡선이라고 말했는데 여는 괄호를 닫는 괄호와 짝이 맞는지로 바꿀 수 있다. ABAB는 3번째 위치의 A가 들어올 때 stack[-1]이 A가 아니므로 좋은 단어가 아니다. AABB는 2번째 위치의 A가 들어올 때 stack[-1]가 A이므로..
[백준] 1918 파이썬(python) : 후위 표기식
https://www.acmicpc.net/problem/1918 1918번: 후위 표기식 첫째 줄에 중위 표기식이 주어진다. 단 이 수식의 피연산자는 알파벳 대문자로 이루어지며 수식에서 한 번씩만 등장한다. 그리고 -A+B와 같이 -가 가장 앞에 오거나 AB와 같이 *가 생략되는 등의 www.acmicpc.net import sys string = list(sys.stdin.readline().rstrip()) res = '' #1 stack = [] #2 for char in string: if char.isalpha(): #3 res += char else: if char == '(': #4 stack.append(char) elif char == '*' or char == '/': #5 while..