일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 파이썬 정렬
- 노개북
- 이것이 취업을 위한 코딩 테스트다
- 북클럽
- ARP
- 이코테
- RARP
- 노마드코더
- 파이썬 연산자
- 쿠키
- 시스템 소프트웨어
- OSI7계층모델
- icmp
- 이것이 취업을 위한 코딩테스트다
- 데이터 통신과 컴퓨터 네트워크
- GIT
- 파이썬 자료형
- 데이터통신
- 컴퓨터네트워크
- 라우팅
- CS
- IT5분잡학사전
- 쉽게 배우는 데이터 통신과 컴퓨터 네트워크
- sort()
- data type
- 기억장치
- 리스트
- DP
- 자료형
- 컴퓨터 동작방식
- Today
- Total
목록Algorithm & Data structure (28)
뚝딱햄 탈출기

접근 방식 접근을 어떻게 해야 할지 아이디어를 떠올리는데 꽤나 걸렸다. 핵심은 정렬!! 가장 큰 종이 조각의 넓이를 출력하려면, 어떤 식으로 잘린 상태인지 알아야 한다. 가로 세로 각각 가장 긴 길이를 가진 사각형이 가장 큰 넓이를 가진 사각형! 따라서 사각형이 가질 수 있는 가로와 세로 길이를 알아야 한다. 우선 가로, 세로 잘린 점들을 넣을 배열을 각각 선언하고 가로 세로 입력값과, 원래 직사각형의 가로 세로 원점과 끝점을 선언한 배열에 각각 넣는다. 그 후 정렬을 하면 각 배열에서 element와 다음(또는 이전) element의 차를 이용해 길이를 구할 수 있다. 가장 큰 가로/세로 길이를 곱해 출력한다. 잘린 사각형들의 가로/세로 길이를 구하기 위해서는 정렬을 해야 한다. ⭐ 세로 배열에는 입력..

핀토스에 절여진 뇌를 부여잡고 오랜만에 알고리즘 풀었당!👩💻 수월하게 풀었지만 백분율 출력 방식에 대해 배워 포스팅을 끄적여본다✍️ 접근 방식 한 줄씩 입력 받고 (c 줄 만큼) 각 줄의 평균 점수를 구해서 각각의 점수가 평균치를 넘으면 cnt += 1 학생 수에 대한 cnt의 비율을 출력한다. 비율은 반올림해 소수점 셋째 자리까지 출력해야 한다. => f-string 이용 ✅ Solution 1 import sys c = int(sys.stdin.readline()) # tc 개수 for _ in range(c): n = list(map(int, sys.stdin.readline().split())) avg = (sum(n) - n[0]) / n[0] cnt = 0 for i in range(1, l..

❌ 접근 방식 1 낮과 밤에 각각 +2, -1만큼의 높이를 올라간다. 따라서 날짜를 처음에 카운트 하고 낮과 밤에 움직일 수 있는 높이를 각각 계산한 후, 높이가 V 이상이 되는 즉시 while문을 종료한 후 날짜를 출력한다. import sys a, b, v = map(int, sys.stdin.readline().split()) days = 0 h = 0 while True:# h == v 일 때까지 무한루프 days += 1 h += a# 낮 if (h >= v): break h -= b# 밤 if (h == v): break print(days) 결과는 시간초과. 이 문제의 시간 제한은 0.25초이기 때문에 반복문을 사용하지 않고 구현해야 한다. ✅ 접근 방식 2 반복문을 사용하지 않고 이 문제를..

❌ 접근 방식 1 N개의 줄에 걸쳐 주어지는 수를 num이라는 리스트에 다 넣고 리스트를 오름차순 정렬한 뒤 리스트 요소들을 하나씩 출력했다. import sys n = int(sys.stdin.readline()) num = [int(sys.stdin.readline()) for _ in range(n)] for i in sorted(num): print(i) 제출 후 만나게 된 '메모리 초과' ;;.... 어쩐지 너무 쉽다 했다 ^..^ 대부분 문제들의 메모리 제한이 128MB, 256 MB인 것에 비해 이 문제는 메모리 제한이 8 MB이기 때문에 메모리 초과를 피하는 데에 초점을 두고 풀어나가야 한다. 메모리 초과 발생 이유 for문을 통해 입력값을 리스트(num)에 삽입한 것 sort(), sor..