1. Environment configuration & K-th division : 환경설정 및 K번째 약수 풀이
def kth_divisor(N, K):
    divisors = [i for i in range(1, N+1) if N % i == 0]
    if K <= len(divisors):
        return divisors[K-1]
    else:
        return -1

N, K = map(int, input().split())
print(kth_divisor(N, K))
**input.txt** 
5

**AA.py**
import sys
# sys.stdin = open("input.txt", "rt")
****n = input()
print(n) 

**input.txt** 
**6 3**

띄어쓰기는 map
n, k = map( int ,  input().split() )
cnt = 0
for i in range (1, n+1):
			if n % i == 0:   # 나누어 떨어짐
					cnt += 1
			if cnt == k:     # k 번째 약수 발견
					print(i)
					break
else: 
		print(-1)   # 3

**input.txt 
6 5**

-1
  1. K-th number : K번째 수
def kth_number(array, commands):
    answer = []
    for command in commands:
        i, j, k = command
        sliced = array[i-1:j]
        sliced.sort()
        answer.append(sliced[k-1])
    return answer

array = [1, 5, 2, 6, 3, 7, 4]
commands = [(2, 5, 3), (4, 4, 1), (1, 7, 3)]
print(kth_number(array, commands))
# Output: [5, 6, 3]
# input example
2
6 2 5 3
5 2 7 3 8 9
15 3 10 3
4 15 8 16 6 6 17 3 10 11 18 7 14 7 15

# output example
#1 7
#2 6

import sys
sys.stdin = open("input.txt", "rt")
T = int(input())
for t in range(T): 
		n, s, e, k = **map( int ,  input().split() )**
		a = list (   **map( int ,  input().split() )** ) 
		print(a[1 : 5])   #  [2, 7, 3, 8]
		a = a[ s-1 : e ]  #

		a.sort()          #  [2, 3, 7, 8]
		print(a[k-1])     #  [5, 2, 7, 3]
		print("#%d %d" **%(** t+1 , a[k-1] **)**)     #  0+1 , 7 = a[
																					#  1+1 , 6 = a[
  1. K-th largest number: K번째 큰 수
def kth_largest_number(array, K):
    array.sort(reverse=True) # 순서대로 
    return array[K-1] # 0 1 2 3 4 5 ...

array = [7, 5, 3, 1, 2, 6, 4]
K = 3
print(kth_largest_number(array, K))
# Output: 5
# input example 1
10 3
13 15 34 23 45 65 33 11 26 42

import sys
sys.stdin = open("input.txt", "rt")
n, k = **map( int ,  input().split() )**
a = list(**map( int ,  input().split())**) 

res = set() # 중복 제거 !! 
for i in range(n):
		for j in range(i+1, n):
				for m in range(j+1, n):
						res.add(a[i] + a[j] + a[m])
res = list(res)
res.sort(reverse = True) # 
print(res[k-1])

12345

123 | 124 | 125 |

134 | 135 |

145

Minimum Value : 최솟값 구하기

nums = [5, 3, 1, 4, 2]
min_val = **min**(nums)
print(min_val)
# Output: 1
arr = [5, 3, 7, 9, 2, 5, 2, 6]
arrMin = float('inf')

for i in range(len(arr)):
#		print(arr[i])
#   5
#   3
#   7
#   ..
#   6
		if arr[i] <= arrMin: # 이러면 다섯번째 2가 아닌 7번째 2
		if arr[i] < arrMin:  # 첫번째 숫자는 무조건 참 5 < inf | 3 < 5 | 7 < 3 | 9 < 3
				arrMin = arr[i]
print(arrMin)

for x in arr:
		if x < arrMin:
					arrMin = x
print(arrMin)
  1. Finding the Representative Value (Closest to the Average) : 대표값 구하기(평균에 가장 가까운)