[코딩테스트/백준]좌표 정렬하기
💡생각
- 점 N개의 개수를 먼저 받아온다음 점의 좌표 받아와서 list에 저장.
- list를 sort이용해 정렬.
- 출력.
❓잘못된 코드1
colab으로 백준 예제를 돌려봤을땐 잘 나와서 뭐가 문제인지 계속 헤매다가 좌표가 음수일 때 정렬을 제대로 못한다는 것을 확인함.
ex) (-1, 3) (-4, 1) --> 답: (-4, 1) (-1, 3) / 내코드: (-1, 3) (-4, 1)
N = int(input())
def solution(N):
inputlist = [[1 for j in range(2)] for i in range(N)]
for i in range(N):
a, b = input().split()
inputlist[i][0] = a
inputlist[i][1] = b
inputlist.sort(key=lambda x:(x[0], x[1]))
for i in range(N):
print(inputlist[i][0] + " " + inputlist[i][1])
solution(N)
❗해결:
1. 지금코드에서는 inputlist에 문자가 들어갔기때문에 int로 바꿔보기.
2. if else문을 사용해서 음수를 따로 처리해주기
💡테스트 통과한 코드
위의 해결방법중에서 1을 사용해 해결함. 첫번째는 시간초과 나와서 뭐가 문제인지 고민해보다 똑같은 코드 한번 더 채점했는데 이번엔 통과됨... 뭐지...?
N = int(input())
def solution(N):
inputlist = [[1 for j in range(2)] for i in range(N)]
for i in range(N):
a, b = input().split()
inputlist[i][0] = int(a)
inputlist[i][1] = int(b)
inputlist.sort(key=lambda x:(x[0], x[1]))
for i in range(N):
print(str(inputlist[i][0]) + " " + str(inputlist[i][1]))
solution(N)
🔗백준 - 좌표 정렬하기
https://www.acmicpc.net/problem/11650
Author And Source
이 문제에 관하여([코딩테스트/백준]좌표 정렬하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@click/코딩테스트백준좌표-정렬하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)