본문 바로가기
알고리즘['파이썬','JavaScript']/구름

구름톤 챌린지 3주 day13 학습 일기

by kk님 2023. 8. 30.

귀여운 손에 들고 있는 물건은 에너지 드링크겠지?

발전기 문제에서 발전된 문제
이제는 (1) 건물 유형에 따라 (2) K개 이상의 동일 건물 유형이 있는, 연결된 건물들을 '단지'라고 정한다.
 
M(r,c)데이터를 저장하기 위해
M = [ 0 for _ in range(31) ] 로 지정해서, 1부터 30까지에 해당하는 건물 유형인 M(r,c)를 인덱스로, 단지 수를 배열의 요소로 저장했다.
배열로 만든 이유는, M 배열에서 가장 큰 요소를 찾아야 하는데 요소간 중복이 가능하다
그런데 출력 조건이 같은 값이면 건물 유형인 M(r,c)의 크기가 큰 것을 출력해야 한다.

따라서, 인덱스 역방향으로 탐색을 하는게 편할 것 같았다. => max() 내장함수로 값을 찾은 뒤, 값과 똑같은 요소를 가진 인덱스를 출력
 
[배운점]
마무리 후에 Q&A 게시판을 봤는데, 문의 글이었지만 코드가 인상깊었다.

if visit[row][col] == True:
    continue

이 방법이었는데, 이는 if문 아래에 조건이 더 추가되는 경우 인덴트(indent, 들여쓰기)를 관리할 수 있는 좋은 작성 방법이라고 생각된다.
 
그리고 for문 한줄 표현 초기화 하는 방법도 배웠다.

 

오늘의 학습 일기 끝!