일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 쉽게 배우는 데이터 통신과 컴퓨터 네트워크
- 데이터통신
- 리스트
- 노마드코더
- 자료형
- 이것이 취업을 위한 코딩 테스트다
- 컴퓨터 동작방식
- 노개북
- 파이썬 정렬
- 데이터 통신과 컴퓨터 네트워크
- ARP
- RARP
- 파이썬 연산자
- 시스템 소프트웨어
- icmp
- 파이썬 자료형
- OSI7계층모델
- IT5분잡학사전
- 이것이 취업을 위한 코딩테스트다
- CS
- sort()
- 컴퓨터네트워크
- data type
- DP
- GIT
- 쿠키
- 기억장치
- 이코테
- 북클럽
- 라우팅
- Today
- Total
목록파이썬 정렬 (2)
뚝딱햄 탈출기
접근 방식 접근을 어떻게 해야 할지 아이디어를 떠올리는데 꽤나 걸렸다. 핵심은 정렬!! 가장 큰 종이 조각의 넓이를 출력하려면, 어떤 식으로 잘린 상태인지 알아야 한다. 가로 세로 각각 가장 긴 길이를 가진 사각형이 가장 큰 넓이를 가진 사각형! 따라서 사각형이 가질 수 있는 가로와 세로 길이를 알아야 한다. 우선 가로, 세로 잘린 점들을 넣을 배열을 각각 선언하고 가로 세로 입력값과, 원래 직사각형의 가로 세로 원점과 끝점을 선언한 배열에 각각 넣는다. 그 후 정렬을 하면 각 배열에서 element와 다음(또는 이전) element의 차를 이용해 길이를 구할 수 있다. 가장 큰 가로/세로 길이를 곱해 출력한다. 잘린 사각형들의 가로/세로 길이를 구하기 위해서는 정렬을 해야 한다. ⭐ 세로 배열에는 입력..
내 풀이 import sys n = int(sys.stdin.readline()) tc =[sys.stdin.readline().strip() for i in range(n)] # 중복 단어 제거 tc = list(set(tc)) # sort()는 리스트 메서드이므로 다시 리스트형으로 변환. # 길이 짧은 순으로 정렬 후 길이 같으면 사전 순으로 정렬 tc.sort(key = lambda x : (len(x), x)) # 단어 한 줄에 하나씩 출력 for i in tc: print(i) 풀이 방식 처음엔 문제에 기술된 순서대로 코드를 작성하려 했다. 단어 길이 순으로 정렬 단어의 길이가 같고, 두 단어가 같으면 단어 한개 삭제 (중복 제거) 단어의 길이가 같고, 두 단어가 다르면 사전 순으로 정렬 그러나..