728x90
내용
입력된 grid_item을 각각 grid 리스트에 넣어서 각 행을 오름차순으로 정렬.
grid의 열을 비교했을 때 오름차순으로 되어 있으면 YES를 리턴, 아니면 NO를 리턴
입력값: t(시험할 테스트 수), n(넣을 행), grid_item(n개의 문자)
알고리즘: grid의 각 행을 오름차순으로 정렬(리스트로 바꿔서 sort() 사용)
grid의 열이 오름차순인지 확인. 아니면 NO 리턴, 맞으면 YES 리턴
def gridChallenge(grid):
n=len(grid) #행 수
arr=[]
for i in range(n):
a=[]
for j in range (len(grid[0])): #grid의 열 수 만큼 반복
a.append(grid[i][j])
a.sort() #a 오름차순 정렬
arr.append(a)
for j in range(len(arr[0])): #arr의 열 수 만큼 반복
for i in range(n-1):
if (arr[i][j]>arr[i+1][j]): #아래의 열보다 위의 열이 크면(오름차순 안됨)
return 'NO'
return 'YES'
main 함수는 HackerRank와 똑같습니다.
참고자료
길이 반환 함수: len()
https://www.codingfactory.net/12872
리스트 오름차순 정렬: list.sort()
https://blockdmask.tistory.com/564
'코딩테스트 문제 > Hackerrank' 카테고리의 다른 글
[HackerRank] New Year Chaos (0) | 2023.05.27 |
---|---|
[HackerRank] Recursive Digit Sum (0) | 2023.05.16 |
[HackerRank] Caesar Cipher (0) | 2023.05.15 |