알고리즘 문제 풀이/이코테
[이코테] CH03 그리디 실전문제 숫자 카드 게임
파란색 가운
2023. 11. 13. 19:54
import sys
# sys.stdin.readline()
from collections import deque
sys.setrecursionlimit(100000000)
import heapq
INF = 1e9
array = []
N,M = map(int,sys.stdin.readline().split())
for _ in range(N):
array.append(list(map(int,sys.stdin.readline().split())))
maxValue = min(array[0])
for i in range(N):
temp = min(array[i])
if maxValue < temp:
maxValue = temp
print(maxValue)
내 코드
이차원배열으로 해결했다 그냥
maxValue = min(array[0])
첫 번째 행에서 가장 짧은 애를 고르고
이제 각 행마다 MinValue(temp)를 선택 후
maxValue보다 크다면 걔를 maxValue로 변경해줬다
해설은
그냥 이차원 배열 말고
배열을 초기화하면서 일차원배열에 입력 받고
거기에 있는 minValue, 그 행의 min값중 큰 값을 저장해주는 방식으로 했다
크게 차이는 없었지만 시간복잡도는 해설이 더 우수하므로
불필요한 입력같은거 줄여보기!