일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 자료형
- 북클럽
- data type
- 리스트
- 파이썬 연산자
- 파이썬 자료형
- 컴퓨터 동작방식
- RARP
- 쿠키
- 라우팅
- 데이터통신
- 노마드코더
- 데이터 통신과 컴퓨터 네트워크
- OSI7계층모델
- 이코테
- 노개북
- 쉽게 배우는 데이터 통신과 컴퓨터 네트워크
- CS
- DP
- 이것이 취업을 위한 코딩 테스트다
- icmp
- 컴퓨터네트워크
- GIT
- 파이썬 정렬
- sort()
- 기억장치
- IT5분잡학사전
- 이것이 취업을 위한 코딩테스트다
- Today
- Total
목록전체 글 (94)
뚝딱햄 탈출기
16진수와 8진수를 10진수로 변환하려면 16진수와 8진수를 문자열 형태로 변수에 저장한 뒤, int() 명령어를 활용하면 된다. 16진수 → 10진수 hex1 = '0x3f6'# str type hex2 = '3f6' print(int(hex1, 16))# 1014. 16진수 hex1을 10진수로 변환 print(int(hex2, 16))# 1014. 16진수 hex2을 10진수로 변환 8진수 → 10진수 oct = '010'# str type print(int(oct, 8))# 8. 8진수 oct을 10진수로 변환 10진수 → 16진수, 8진수, 2진수 10진수를 16진수로 변환할 때는 '{0:x}'.format(10진수) 형태를 사용한다. 10진수를 8진수로 변환할 때는 '{0:o}'.format(..

접근 방식 접근을 어떻게 해야 할지 아이디어를 떠올리는데 꽤나 걸렸다. 핵심은 정렬!! 가장 큰 종이 조각의 넓이를 출력하려면, 어떤 식으로 잘린 상태인지 알아야 한다. 가로 세로 각각 가장 긴 길이를 가진 사각형이 가장 큰 넓이를 가진 사각형! 따라서 사각형이 가질 수 있는 가로와 세로 길이를 알아야 한다. 우선 가로, 세로 잘린 점들을 넣을 배열을 각각 선언하고 가로 세로 입력값과, 원래 직사각형의 가로 세로 원점과 끝점을 선언한 배열에 각각 넣는다. 그 후 정렬을 하면 각 배열에서 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..
if ~ else 문을 간결하게 한줄로 작성하고자 할 때 삼항 연산자를 사용한다.if (condition) : # [condition이 True 일 때 실행] else : # [condition이 False 일 때 실행]일반적인 if ~ else 문은 최소 4개의 라인으로 이루어져 있지만, 삼항 연산자를 사용하면 if ~ else 문을 1개의 라인으로 작성할 수 있다. 대부분의 언어에서 삼항 연산자를 작성하는 법은 아래와 같다. 조건문을 만족할 때 (참인 경우) [true] 부분의 실행문을 실행하고, 조건문을 만족하지 않을 때 (거짓인 경우) [false] 부분의 실행문을 실행한다. [condition] ? [true] : [false] // 조건문 ? 조건이 참일 때 (if절 실행문) : 조건이 거짓일..