컴공생 누르지 마세요! 컴공생 울어요.
[그리디] 그리디 알고리즘 (3) 실전 문제 - 숫자 카드 게임 본문
이코테 p.96 실전 문제 - 숫자 카드 게임
내 소스코드
각 행의 가장 작은 수 중에서 가장 큰 수를 구하는, 그리디 알고리즘 적용
import sys
N, M = map(int, sys.stdin.readline().rstrip().split())
data = []
for n in range(N):
data.append(list(map(int, sys.stdin.readline().rstrip().split())))
maximum = 0
# 각 행의 가장 작은 수 중 가장 큰 수 구하기
for n in range(N):
# 각 행의 가장 작은 수 구하기
minimum = data[n][0]
for m in range(M):
if minimum > data[n][m]:
minimum = data[n][m]
# 각 행의 가장 작은 수 중에서 가장 큰 수 구하기
if maximum < minimum:
maximum = minimum
print(maximum)
교재 소스코드 ver1 - min() 함수 이용
import sys
N, M = map(int, sys.stdin.readline().rstrip().split())
result = 0
for n in range(N):
data = list(map(int, sys.stdin.readline().rstrip().split()))
minimum = min(data)
result = max(result, minimum)
print(result)
교재 소스코드 ver2 - 이중for문 이용
import sys
N, M = map(int, sys.stdin.readline().rstrip().split())
result = 0
for n in range(N):
data = list(map(int, sys.stdin.readline().rstrip().split()))
# 현재 행에서 가장 작은 수 찾기
minimum = 12345
for a in data:
minimum = min(minimum, a)
# 가장 작은 수들 중에서 가장 큰 수 찾기
result = max(result, minimum)
print(result)
'STUDY > 알고리즘' 카테고리의 다른 글
[구현] 구현 (2) 실전 문제 - 왕실의 나이트 (0) | 2023.03.11 |
---|---|
[구현] 구현 (1) 개요 및 예제 (4) | 2023.03.06 |
[그리디] 그리디 알고리즘 (3) 실전 문제 - 1이 될 때까지 (0) | 2023.03.06 |
[그리디] 그리디 알고리즘 (2) 실전 문제 - 큰 수의 법칙 (0) | 2023.03.06 |
[그리디] 그리디 알고리즘 (1) 개념 (0) | 2023.03.06 |
Comments