20210828 TIL
업데이트:
프로젝트 팀 1회차 회의록 작성
새벽까지 회의록 내용을 작성했다.
7페이지 분량 정도 나왔다.
공통 과제 : 팀 대표님이 보내주신 책 읽고 1차 아이템 생각해오기
개인 과제 :
멘토 관련 매니저님 답변 팀원에게 전달
어도비Xd / 제플린 -> Flutter 적용 방법 공부해오기
디자이너와 Flutter 개발자가 협업하는 과정 알아오기
Flutter와 Firebase 공부 -> 뼈대가 될 기초 앱 만들기
프로젝트 팀 다음 회의 날짜 변경
9/7 화요일 오후 7시에서 9/3 금요일 낮으로 변경했다.
내일 책이 도착할 예정이니 빠른 시간 안에 다 읽어봐야 한다.
프로젝트 팀 노션 아이디 공유
팀 대표님이 학교 계정으로 노션 가입하고
개인 프로 계정으로, 팀원들은 편집자로 초대하기로 했다.
백준 단계별로 풀어보기 12단계 중 예제 10단계 풀기
18870번 문제를 풀었다.
좌표마다, 해당 좌표보다 작은 값의 좌표(중복X)의 개수를 카운팅하면 시간이 오래 걸릴 것 같아서
set 자료형으로 중복을 제거한 다음 정렬하는 것을 생각했다.
정렬 이후 해당 숫자의 인덱스 값이, 문제에서 요구하는 X’값과 같은 걸 알아차렸다.
특정 좌표의 X’값을 구하는 방법은 알아냈다.
문제에서 요구하는 것은,
처음 입력받은 좌표 순서대로, 각 좌표의 X’값을 출력해야 한다.
그렇다면, 처음 입력받은 좌표 데이터는 유지하고,
특정 좌표의 X’을 구하기 위해 좌표를 정렬할 때는 새로운 리스트를 만들어야 한다.
이를 위해 sort() 메소드가 아니라 sorted() 함수를 이용해야 한다.
그리고 각 좌표의 인덱스 값을 찾을 수 있어야 하니까,
각 좌표 값을 Key, 인덱스 값을 Value로 딕셔너리에 저장해야 한다.
딕셔너리에 저장한 다음에는
for문으로 처음 입력 받은 좌표 리스트의 각 원소에 대해, 딕셔너리[Key]를 출력하면 Key에 해당하는 딕셔너리 Value값이 출력된다.
GitHub에 올린 소스 코드는 아래에 있다.
level10-18870-좌표압축.py