https://www.acmicpc.net/problem/2501 2501번: 약수 구하기 첫째 줄에 N과 K가 빈칸을 사이에 두고 주어진다. N은 1 이상 10,000 이하이다. K는 1 이상 N 이하이다. www.acmicpc.net ## 약수 구하기 import sys n, k = map(int, sys.stdin.readline().split()) arr = [] for i in range(1, n + 1): if n % i == 0: arr.append(i) arr.sort() if len(arr) < k: print(0) else: print(arr[k - 1]) MEMO !! 알고있던 리스트 사용법 복습 !!
https://www.acmicpc.net/problem/10773 10773번: 제로 첫 번째 줄에 정수 K가 주어진다. (1 ≤ K ≤ 100,000) 이후 K개의 줄에 정수가 1개씩 주어진다. 정수는 0에서 1,000,000 사이의 값을 가지며, 정수가 "0" 일 경우에는 가장 최근에 쓴 수를 지우고, 아닐 경 www.acmicpc.net #include // 제로 #include typedef struct { int* stk; int ptr; }STACK; int is_empty(STACK* s) { if (s->ptr ptr stk[s->ptr++] = num; *sum += num; } } void pop(STACK* s, int *sum) { if (!is_empty(s)) { *sum -=..
https://www.acmicpc.net/problem/10798 10798번: 세로읽기 총 다섯줄의 입력이 주어진다. 각 줄에는 최소 1개, 최대 15개의 글자들이 빈칸 없이 연속으로 주어진다. 주어지는 글자는 영어 대문자 ‘A’부터 ‘Z’, 영어 소문자 ‘a’부터 ‘z’, 숫자 ‘0’ www.acmicpc.net ## 세로읽기 import sys arr = [] for i in range(5): temp = sys.stdin.readline().strip() arr.append(temp) for i in range(15): for j in range(5): if i < len(arr[j]): print(arr[j][i], end = '') MEMO !! 2차원 리스트 연습하기 !!
https://www.acmicpc.net/problem/2589 2589번: 보물섬 보물섬 지도를 발견한 후크 선장은 보물을 찾아나섰다. 보물섬 지도는 아래 그림과 같이 직사각형 모양이며 여러 칸으로 나뉘어져 있다. 각 칸은 육지(L)나 바다(W)로 표시되어 있다. 이 지도에서 www.acmicpc.net #include // 보물섬 #include #include #define max(a, b) a > b ? a : b char graph[51][51]; int visit[51][51]; int dx[4] = { 0, 0, 1, -1 }; int dy[4] = { 1, -1, 0, 0 }; int ans = -1; typedef struct { int x; int y; struct node* next..
https://www.acmicpc.net/problem/2003 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 #include // 수들의 합 2 int main() { int n, m; scanf("%d %d", &n, &m); int arr[10001] = { 0, }; for (int i = 0; i < n; i++) { scanf("%d", &arr[i]); } int cnt = 0; for (int i = 0; i < n; i++) { int j = i +..
https://www.acmicpc.net/problem/10812 10812번: 바구니 순서 바꾸기 도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 순서대로 적혀져 있다. 바구니는 일렬로 놓여져 있고, 가장 왼쪽 바구니를 1번째 바구니, 그 다음 바구니를 2 www.acmicpc.net ## 바구니 순서 바꾸기 import sys n, m = map(int, sys.stdin.readline().split()) arr = [i for i in range(1, n + 1)] for _ in range(m): i, j, k = map(int, sys.stdin.readline().split()) i, j, k = i - 1, j - 1, k - 1 arr = arr[:i..
https://www.acmicpc.net/problem/10810 10810번: 공 넣기 도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 또, 1번부터 N번까지 번호가 적혀있는 공을 매우 많이 가지고 있다. 가장 처음 바구니에는 공이 www.acmicpc.net ## 공 넣기 import sys n, m = map(int, sys.stdin.readline().split()) arr = [0 for _ in range(n + 1)] for _ in range(m): start, end, num = map(int, sys.stdin.readline().split()) for j in range(start, end + 1): arr[j] = num for ..