diff --git "a/src/main/kotlin/jimin/66week/\353\247\245\354\243\274 \353\247\210\354\213\234\353\251\264\354\204\234 \352\261\270\354\226\264\352\260\200\352\270\260.py" "b/src/main/kotlin/jimin/66week/\353\247\245\354\243\274 \353\247\210\354\213\234\353\251\264\354\204\234 \352\261\270\354\226\264\352\260\200\352\270\260.py" new file mode 100644 index 00000000..e7a3bee2 --- /dev/null +++ "b/src/main/kotlin/jimin/66week/\353\247\245\354\243\274 \353\247\210\354\213\234\353\251\264\354\204\234 \352\261\270\354\226\264\352\260\200\352\270\260.py" @@ -0,0 +1,33 @@ +import sys +from collections import deque + +t = int(sys.stdin.readline()) +for i in range(t): + n = int(sys.stdin.readline()) + home = list(map(int, sys.stdin.readline().split())) + stores = [] + for j in range(n): + stores.append(list(map(int, sys.stdin.readline().split()))) + festival = list(map(int, sys.stdin.readline().split())) + visited = [False for _ in range(n)] + + queue = deque([]) + queue.append(home) + isPossible = False + while queue: + nx, ny = queue.popleft() + if abs(nx - festival[0]) + abs(ny - festival[1]) <= 20 * 50: + isPossible = True + break + + for i in range(n): + if not visited[i]: + if abs(nx - stores[i][0]) + abs(ny - stores[i][1]) <= 20 * 50: + visited[i] = True + queue.append(stores[i]) + + if isPossible: + print("happy") + else: + print("sad") + diff --git "a/src/main/kotlin/jimin/66week/\354\210\234\355\232\214\352\260\225\354\227\260.py" "b/src/main/kotlin/jimin/66week/\354\210\234\355\232\214\352\260\225\354\227\260.py" new file mode 100644 index 00000000..39aae08b --- /dev/null +++ "b/src/main/kotlin/jimin/66week/\354\210\234\355\232\214\352\260\225\354\227\260.py" @@ -0,0 +1,20 @@ +import sys + +n = int(sys.stdin.readline()) +classes = [] +maxi = 0 +for i in range(n): + classes.append(list(map(int, sys.stdin.readline().split()))) + maxi = max(maxi, classes[-1][1]) + +classes.sort(reverse=True) +visited = [0 for _ in range(maxi + 1)] +for i in range(n): + p, d = classes[i] + + for j in range(d, 0, -1): + if visited[j] == 0: + visited[j] = p + break + +print(sum(visited)) \ No newline at end of file diff --git "a/src/main/kotlin/jimin/66week/\354\232\251\354\225\241.py" "b/src/main/kotlin/jimin/66week/\354\232\251\354\225\241.py" new file mode 100644 index 00000000..75cffc52 --- /dev/null +++ "b/src/main/kotlin/jimin/66week/\354\232\251\354\225\241.py" @@ -0,0 +1,22 @@ +import sys + +n = int(sys.stdin.readline()) +feats = list(map(int, sys.stdin.readline().split())) + +start = 0 +end = n - 1 +mini = 2_000_000_000 +ms, me = feats[0], feats[n - 1] +while start < end: + if mini > abs(feats[start] + feats[end]): + mini = abs(feats[start] + feats[end]) + ms, me = feats[start], feats[end] + + if feats[start] + feats[end] < 0: + start += 1 + elif feats[start] + feats[end] > 0: + end -= 1 + else: + break + +print(ms, me) \ No newline at end of file diff --git "a/src/main/kotlin/jimin/66week/\355\230\274\354\236\220\354\204\234 \355\225\230\353\212\224 \355\213\261\355\203\235\355\206\240.py" "b/src/main/kotlin/jimin/66week/\355\230\274\354\236\220\354\204\234 \355\225\230\353\212\224 \355\213\261\355\203\235\355\206\240.py" new file mode 100644 index 00000000..4b633798 --- /dev/null +++ "b/src/main/kotlin/jimin/66week/\355\230\274\354\236\220\354\204\234 \355\225\230\353\212\224 \355\213\261\355\203\235\355\206\240.py" @@ -0,0 +1,76 @@ +def solution(board): + x = 0 + o = 0 + for i in range(3): + for j in range(3): + if board[i][j] == 'X': + x += 1 + elif board[i][j] == 'O': + o += 1 + + if x > o: + return 0 + if x == 0 and o == 0: + return 1 + if o - x > 1: + return 0 + + x_bingo = 0 + o_bingo = 0 + for i in range(3): + # 가로 + first = board[i][0] + if first == '.': + continue + + isBingo = True + for j in range(1, 3): + if first != board[i][j]: + isBingo = False + break + + if isBingo: + if first == 'X': + x_bingo += 1 + elif first == 'O': + o_bingo += 1 + + for i in range(3): + # 세로 + first = board[0][i] + if first == '.': + continue + + isBingo = True + for j in range(1, 3): + if first != board[j][i]: + isBingo = False + break + + if isBingo: + if first == 'X': + x_bingo += 1 + elif first == 'O': + o_bingo += 1 + + # 대각선 + if board[0][0] != '.' and board[0][0] == board[1][1] and board[1][1] == board[2][2]: + if board[0][0] == 'X': + x_bingo += 1 + elif board[0][0] == 'O': + o_bingo += 1 + elif board[0][2] != '.' and board[0][2] == board[1][1] and board[1][1] == board[2][0]: + if board[0][2] == 'X': + x_bingo += 1 + elif board[0][2] == 'O': + o_bingo += 1 + + if o_bingo > x_bingo and o == x + 1: + return 1 + if o_bingo < x_bingo and o == x: + return 1 + if o_bingo == 0 and x_bingo == 0: + return 1 + + return 0 +