본문 바로가기

프로그래밍 회고록/Python

2021.10.21 코테_숫자 카드 게임

728x90
반응형

# 오늘의 문제

이것이 코딩 테스트다. 챕터3-3 96page 숫자 카드 게임

 # 나의 코드

n,m = map(int, input().split())
arr = [[0 for i in range(n)] for j in range(m)] 
num2 = 0
while(True):
  data = list(map(int, input().split()))
  arr[num2] = data

  num2 = num2 +1

  if(num2 == n):
    break

temp = []
for i in arr:
  temp.append(min(i))
  
print(max(temp))

# 정답과의 비교

1. 내 코드는 파이썬의 라이브러리들을 제대로 활용하지 못한 모습을 보인다

- 코드언어 경험미숙으로 코드를 서술했다. 예컨데 n 만큼 루프를 돌고 싶다면 for i in range(n):  라고 입력하고 루프를 이어나가면 되는데, java while문 변수선언해서 1씩 더해주는 방법을 썼다. 파이썬에서는 영리하게 변수선언을 하지않아도 원하는 만큼 루프가 가능함에도 이런 코딩을 한것에 반성한다.

2. 루프를 돌려 2중 배열을 다 완성한 후 다시 그 배열을 다시 루프를 돌려 값을 해결하는 방식으로 접근했다.

- 루프를 돌려 2중 배열을 완성할것이 아니라 처음 루프를 돌때 인풋으로 받아오는 List객체 마다 가장 작은 값을 가져와서 그걸 다시 List에 선언해주고 거기서 가장 작은 값이 모여있는 LIst의 max값을 찾으면 해결되는 문제를 이와같이 2번의 루프로 해결하면서 코드가 길어졌다.

# 이 첫줄 인풋 map 메소드가 의미하는 뜻을 좀더 알아보자
n,m = map(int, input().split())

result = 0
for i in range(n):
	data = list(map(int, input().split())
    minValue = min(data)
    result = max(result, minvalue)
    
print(result)
728x90

'프로그래밍 회고록 > Python' 카테고리의 다른 글

2021.10.25 코테_왕실의 나이트  (0) 2021.10.26
2021.10.25 코테_시각  (0) 2021.10.25
2021.10.24 코테_상하좌우  (0) 2021.10.24
2021.10.21 코테_1이 될 때까지  (0) 2021.10.22
2021.21.19 코테_큰 수의 법칙  (0) 2021.10.19