일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준
- 머신러닝과 딥러닝
- 백준 16918번
- 그래프
- 백준 1253번
- Python
- 그리디
- 백준 2512번
- ubuntu
- 자바
- 모각코
- MySQL
- 명품자바
- react
- SQL
- javascript
- 다이나믹 프로그래밍
- HUFS 모각코 캠프
- 백준 1331번
- 다이나믹프로그래밍
- 백준 3085번
- AWS
- 백준 1987
- 깃헙
- 백준 15787번
- java_programming
- 알고리즘
- 백준 17451번
- SWEA 15612번
- 백준 18310번
- Today
- Total
목록CS/Algorithm (90)
차곡차곡
백준 #13022 늑대와 올바른 단어 13022번: 늑대와 올바른 단어 첫째 줄에 단어가 주어진다. 단어는 w, o, l, f로만 이루어져 있으며, 길이는 50을 넘지 않는다. www.acmicpc.net import sys input = sys.stdin.readline word = input().strip() now = 0 # 현재 문자 인덱스 next = 1 # w: 1, o: 2, l: 3, f: 4 cnt = 0 cnt2 = 0 while now < len(word): if word[now] == "w": if next == 1: while now < len(word) and word[now] == "w": cnt += 1 now += 1 next = 2 else: print(0) exit() ..
백준 #12789 도키도키 간식드리미 12789번: 도키도키 간식드리미 인하대학교 학생회에서는 중간, 기말고사 때마다 시험 공부에 지친 학우들을 위해 간식을 나눠주는 간식 드리미 행사를 실시한다. 승환이는 시험 기간이 될 때마다 간식을 받을 생각에 두근두 www.acmicpc.net from collections import deque import sys input = sys.stdin.readline n = int(input()) # 학생 수 num = deque(list(map(int, input().split()))) # 번호표 now = 1 # 현재 받아야 하는 번호 q = [] # 빈 공간 while num: if now == num[0]: num.popleft() now += 1 elif le..
백준 #17827 달팽이 리스트 17827번: 달팽이 리스트 첫째 줄에 노드의 개수 N(2 ≤ N ≤ 200,000), 질문의 횟수 M(1 ≤ M ≤ 200,000), N번 노드가 가리키는 노드의 번호 V(2 ≤ V ≤ N)가 공백으로 구분되어 주어진다. 둘째 줄에 N개의 정수 C1, C2, …, CN이 공백 www.acmicpc.net import sys input = sys.stdin.readline n, m, v = map(int, input().split()) # n: 노드 개수, m: 질문 횟수, v: 노드 n이 가리키는 노 번호 l = list(map(int, input().split())) # 노드 정수 for _ in range(m): k = int(input()) # 이동하려는 노드 칸 ..
백준 #11866 요세푸스 문제0 11866번: 요세푸스 문제 0 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) www.acmicpc.net import sys input = sys.stdin.readline n, k = map(int, input().split()) # n: 인원 수, k: K번째 사람 제거 people = list(range(n)) num = k - 1 # 제거할 사람 인덱스 pmt = [] # 제거된 사람들 while True: pmt.append(str(people.pop(num) + 1)) if len(people) == 0: break n -= 1 num += k - 1 if num >= n: while num >= n: nu..
백준 #1021 회전하는 큐 1021번: 회전하는 큐 첫째 줄에 큐의 크기 N과 뽑아내려고 하는 수의 개수 M이 주어진다. N은 50보다 작거나 같은 자연수이고, M은 N보다 작거나 같은 자연수이다. 둘째 줄에는 지민이가 뽑아내려고 하는 수의 위치가 www.acmicpc.net from collections import deque import sys input = sys.stdin.readline n, m = map(int, input().split()) # n: 큐의 크기, m: 뽑아내려는 원소 개수 spot = deque(list(map(int, input().split()))) # 뽑아내려는 원소 위치 inx = deque(list(range(n))) # 기존 인덱스 cnt = 0 for i in ..
백준 #2003 수들의 합 2 2003번: 수들의 합 2 첫째 줄에 N(1 ≤ N ≤ 10,000), M(1 ≤ M ≤ 300,000,000)이 주어진다. 다음 줄에는 A[1], A[2], …, A[N]이 공백으로 분리되어 주어진다. 각각의 A[x]는 30,000을 넘지 않는 자연수이다. www.acmicpc.net import sys input = sys.stdin.readline n, m = map(int, input().split()) # n: 수열 수, m: 합이 나와야 하는 값 seq = list(map(int, input().split())) i, j = 0, 0 # 포인터 cnt = 0 # 경우의 수 while i
백준 #1748 수 이어 쓰기 1 1748번: 수 이어 쓰기 1 첫째 줄에 N(1 ≤ N ≤ 100,000,000)이 주어진다. www.acmicpc.net import sys input = sys.stdin.readline num = input().strip() cnt = 0 # 자릿수 for i in range(len(num), 0, -1): if len(num) == 1: # 한 자릿수일 경우 cnt = int(num) else: if i == len(num): cnt = i * (int(num) - (10 ** (len(num) - 1)) + 1) else: cnt += i * (9 * (10 ** (i - 1))) print(cnt) 입력 숫자가 한 자리 수일 경우 새로운 수의 자릿수는 그 값과..
백준 #2531 회전 초밥 2531번: 회전 초밥 첫 번째 줄에는 회전 초밥 벨트에 놓인 접시의 수 N, 초밥의 가짓수 d, 연속해서 먹는 접시의 수 k, 쿠폰 번호 c가 각각 하나의 빈 칸을 사이에 두고 주어진다. 단, 2 ≤ N ≤ 30,000, 2 ≤ d ≤ 3,000, 2 ≤ www.acmicpc.net from collections import deque import sys input = sys.stdin.readline n, d, k, c = map(int, input().split()) # n: 접시 수, d: 초밥 가짓수, k: 연속해서 먹는 접시 수, c: 쿠폰 번호 sushi = [int(input()) for _ in range(n)] # 초밥 종류 max_kinds = 0 # 초밥 ..