일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 소트인사이드
- 그리디알고리즘
- 소트
- 코테
- 덩치
- 백준
- 최빈값
- 동적계획법
- 동적
- 스택
- DFS
- 스프링프레임워크
- 그리디
- 404에러
- 통계학
- 다익스트라
- 파이썬
- 프로그래머스
- 최단거리
- 2중포문
- 브루트포스
- 스프링
- 백트래킹
- 퇴각검색
- 월간 코드 챌린지 시즌2
- sort
- 코딩테스트
- Python
- Backtracking
- 정렬
- Today
- Total
목록전체 글 (127)
취준생의 코딩테스트 연습기
# 문제 링크 www.acmicpc.net/problem/1874 1874번: 스택 수열 1부터 n까지에 수에 대해 차례로 [push, push, push, push, pop, pop, push, push, pop, push, push, pop, pop, pop, pop, pop] 연산을 수행하면 수열 [4, 3, 6, 8, 7, 5, 2, 1]을 얻을 수 있다. www.acmicpc.net # Soultion 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 #스택수열 n = int(input()) input_stack = [] for _ in range(n): input_stack.append(int(input())) input_st..
# 문제 링크 www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 하나 또는 여러줄에 걸쳐서 문자열이 주어진다. 각 문자열은 영문 알파벳, 공백, 소괄호("( )") 대괄호("[ ]")등으로 이루어져 있으며, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마 www.acmicpc.net # Soultion 닫는 괄호가 나왔을 때 바로 break를 이용하여 종료하지말고, li에 값을 아무거나 넣고 종료해야함 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 while(True): li = [] s = input() if s=='.': break for i in s: i..
# 문제 링크 www.acmicpc.net/problem/9012 9012번: 괄호 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 www.acmicpc.net # Soultion 무한루프를 이용하여 문자열안에 '()'가 들어있으면 제거를 해주고 난 뒤, 제거를 한 문자열이 비어있으면 YES 아니면 NO를 출력하도록 구현 1 2 3 4 5 6 7 8 9 10 11 12 13 t = int(input()) for _ in range(t): s = input() while(1): if '()' not in s: break s =..
# 문제 링크 www.acmicpc.net/problem/10773 10773번: 제로 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경 www.acmicpc.net # Soultion 간단하게 리스트를 이용하여 스택 구현. 1 2 3 4 5 6 7 8 9 10 k = int(input()) li = [] for _ in range(k): n = int(input()) if n==0: li.pop() else: li.append(n) print(sum(li)) cs 6. n의 값이 0이면 pop()함수를 이용하여 마지막 값 제..
# 문제 링크 www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net # Soultion 시간초과 문제가 발생하므로, 5줄에서 input() 대신 sys.stdin.readline()을 이용하여 읽어온다.파이썬에서는 리스트를 이용하여 스택으로 사용이 가능하다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 import sys n = int(input()) stack = [] for ..
※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. # 문제 링크 swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDN86AAXw5UW6&subjectId=AWOVFCzaqeUDFAWg# SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com # Soultion 1 2 3 4 5 6 7 8 9 10 11 from collections import Counter t = int(input()) for tc in range(1,t+1): n = int(input()) s = list(map(int,input())) s.sort(re..
※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. # 문제 링크 swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDN86AAXw5UW6&subjectId=AWOVFCzaqeUDFAWg# SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com # Soultion 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 t = int(input()) for test_case in range(1,t+1): n,m = map(int,input().split()) a = list(map(int,input().split())) ..
※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. # 문제 링크 swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDN86AAXw5UW6&subjectId=AWOVFCzaqeUDFAWg# SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com # Soultion 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 T = int(input()) for test_case in range(1,T+1): cnt = 0 k,n,m = map(int,input().s..
※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다. # 문제 링크 swexpertacademy.com/main/main.do SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com # Soultion 1 2 3 4 5 6 T = int(input()) for test_case in range(1,T+1): n = int(input()) li = list(map(int,input().split())) print("#"+str(test_case),max(li)-min(li)) cs
# 문제 링크 www.acmicpc.net/problem/11048 11048번: 이동하기 준규는 N×M 크기의 미로에 갇혀있다. 미로는 1×1크기의 방으로 나누어져 있고, 각 방에는 사탕이 놓여져 있다. 미로의 가장 왼쪽 윗 방은 (1, 1)이고, 가장 오른쪽 아랫 방은 (N, M)이다. 준규는 www.acmicpc.net # Soultion (실패) 재귀를 이용하여 문제를 풀었는데, 런타임 에러 (RecursionError)가 발생하였다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 n,m = map(int, input().split()) li = [] for _ in range(n): li..