일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준10757
- collections
- 백준1312
- 제주ICT
- 백준1247
- 코딩테스트
- F-string
- 제주코딩베이스캠프
- 큐
- 더오름
- 이터레이터
- 자료구조
- 개발자
- javascript
- 컴프리헨션
- 백준 10814
- 백준10039
- 코테
- 백준25305
- 백준2587
- 코테준비
- 파이썬
- 백준2525
- 백준
- 백준2751
- 왈러스 연산자
- 백준1284
- Python
- 위니브
- 백준1181
- Today
- Total
목록코테준비 (11)
hyei-devlog

📍 문제https://www.acmicpc.net/problem/1312 📍 전체 코드A, B, N = map(int, input().split())num = A * (10 ** N) // Bdigit = num % 10print(digit) 📍 문제 풀이num = A * (10 ** N) // B 분자 A에 10의 N제곱을 곱하여, 소수점 아래 N자리까지 미리 확장한다.예를 들어, N=3이라면 A를 1000배 확장하는 것이다. 그 후, B로 나누는 연산을 정수 나누기(//)로 수행한다. 이렇게하면 소수점 이하 자리에서 원하는 값만 남게 된다. digit = num % 10 num을 10으로 나눈 나머지를 구하는 연산을 통해 소수점 N번째 자리의 숫자를 추출할 수 있다. 📍 문제 해결 위한 고민..

📍 문제 📍 전체 코드import sysinput = sys.stdin.readlineN = int(input())num_list = list(int(input()) for _ in range(N))num_list.sort()for num in num_list: print(num) 📍 문제 해결 위한 고민 sort()는 원본 리스트를 정렬하고, 그 자체로는 리스트를 반환하지 않고 None을 반환한다.print(num_list.sort())는 정렬된 리스트가 아니라 None을 출력한다.num_list.sort() # 리스트를 정렬print(num_list) # 정렬된 리스트 출력 sys.stdin.readline()을 사용하여 시간 초과 문제를 해결했다.import sysinput = sys..

📍 문제https://www.acmicpc.net/problem/10814 📍 전체 코드N = int(input())arr = []for i in range(N): age, name = input().split() age = int(age) arr.append([age, name])arr.sort(key=lambda x: x[0])for i in range(N): print(arr[i][0], arr[i][1]) 📍 문제 풀이for i in range(N): age, name = input().split() age = int(age) arr.append([age, name]) N번 반복하면서 나이와 이름을 입력받아 리스트에 저장한다.split()을 사용해 입력을..

📍 문제https://www.acmicpc.net/problem/2587 📍 전체 코드num_list = list(int(input()) for _ in range(5))print(int(sum(num_list) / 5)) # 평균print(sorted(num_list)[2]) # 중앙값 📍 문제 풀이num_list = list(int(input()) for _ in range(5))5개의 정수를 입력받아 리스트 num_list에 저장한다.int(input())을 5번 반복하여 각 숫자를 정수로 변환한 후, 리스트로 만든다. print(int(sum(num_list) / 5)) # 평균리스트 num_list의 합을 sum(num_list)으로 구하고, 5로 나눈 후 정수형(int())으로 변환하여 ..

📍 문제https://www.acmicpc.net/problem/2525 📍 전체 코드h, m = map(int, input().split())cook_m = int(input())h += cook_m // 60m += cook_m % 60if m >= 60: h += 1 m -= 60if h >= 24: h -= 24print(h, m) 📍 문제 풀이주어진 시간 (h, m)에 추가로 주어진 분(cook_m)을 더한 후, 24시간제에 맞게 조정하는 문제이다. 1. 시간과 분을 더하기cook_m // 60 # → 추가할 시간 계산cook_m % 60 # → 추가할 분 계산 2. 분(m)이 60 이상이면 시(h) 증가시키기 if m >= 60: # m >= 60이면 h +1, m - 6..

📍 문제https://www.acmicpc.net/problem/25305 📍 전체 코드N, k = map(int, input().split())num_list = list(map(int, input().split()))num_list.sort(reverse=True)print(num_list[k-1]) 📍 문제 풀이num_list = list(map(int, input().split())) 한 줄로 입력받아 정수 리스트로 변환한다.num_list.sort(reverse=True) 정수 리스트를 내림차순으로 정렬한다. (기본값: 오름차순)print(num_list[k-1]) 문제에서 요구하는 위치의 점수를 출력한다. 📍 문제 해결을 위한 고민리스트를 정렬하는 방법에는 'sorted()'와 'sor..

📍 문제https://www.acmicpc.net/problem/1181📍 전체 코드N = int(input())num_list = []for i in range(N): num_list.append(input())sorted_list = sorted(set(num_list), key=lambda x: (len(x), x))for i in range(len(sorted_list)): print(sorted_list[i]) 📍 문제 풀이문제에서 요구한 조건 3가지 알파벳 소문자로 이루어진 N개의 문자열을 1. 길이가 짧은 것부터 2. 길이가 같으면 사전 순으로 정렬한다.3. 중복된 단어는 하나만 남기고 제거한다. sorted_list = sorted(set(num_list), key=lam..

📍 문제https://www.acmicpc.net/problem/1284 📍 전체 코드while(1): user_input = int(input()) if user_input == 0: break result = 0 num_list = list(map(int, str(user_input))) for n in num_list: if n == 0: result += 4 elif n == 1: result += 2 else: result += 3 result += (len(num_list) - 1) + 2 print(result) 📍 문제 풀이문제에서 요..

📍 문제https://www.acmicpc.net/problem/10039 📍 전체 코드print(int(sum(max(40, int(input())) for _ in range(5)) / 5)) 📍 문제 풀이max(40, int(input())) for _ in range(5) 5개의 정수를 입력받는다. 이때, 입력값이 40보다 작으면 40을 반환하고, 크거나 같으면 입력값을 그대로 반환한다. 문제에서 40점 미만인 학생들은 보충 수업을 통해 항상 40점을 받게 된다.sum() 입력받은 5개의 정수들을 더하고, 5로 나누어 평균을 계산한다. int형으로 변환하여 소수점을 버린다. 📍 문제 해결을 위한 고민이 문제는 for문 안에서 if문을 사용하면 아주 쉽게 풀 수 있지만, 코드를 최대한 압..

📍 문제https://www.acmicpc.net/problem/1247 📍 전체 코드import sysinput = sys.stdin.readlinefor _ in range(3): N = int(input()) flag = sum(int(input()) for _ in range(N)) if flag == 0: print(0) elif flag 📍 문제 풀이sum(int(input()) for _ in range(N)) 한 번에 여러 입력을 받아서 합산flag == 0일 때는 0을 출력하고, flag 0일 때는 +를 출력 📍 문제 해결을 위한 고민import sysinput = sys.stdin.readline 추가해주지 않았더니 채점 시간이 너무 오래걸렸..