[HackerRank] Electronics Shop (전자제품상점) Implementation 문제
·
Programming/CodingTest
문제당신은 새 키보드와 USB 드라이브를 구매하려고 합니다.가게에서 각 제품에 대한 다양한 가격이 주어집니다.당신은 제한된 예산 내에서 하나의 키보드와 하나의 USB 드라이브를 구입하려고 합니다.가능한 한 많은 돈을 쓰고 싶지만, 예산을 초과할 수는 없습니다.예산 내에서 키보드와 USB 드라이브를 구입할 수 있는 최대 금액을 계산하세요. 입력값:첫 번째 줄: 예산을 나타내는 정수 b.두 번째 줄: 키보드의 가격 목록을 나타내는 정수 배열 keyboards.세 번째 줄: USB 드라이브의 가격 목록을 나타내는 정수 배열 drives. 출력값:예산 내에서 키보드와 USB 드라이브를 함께 구매할 수 있는 최대 금액을 출력합니다. 만약 어떤 것도 구매할 수 없다면 -1을 출력합니다. 예시:입력10[3, 1][5..
[HackerRank] Sales by Match (양말 판매상) Implementation 문제
·
Programming/CodingTest
문제 :당신에게는 다양한 색상의 양말이 무작위로 섞인 큰 양말 더미가 있습니다. 각 양말의 색상은 정수로 표시되며, 배열로 제공됩니다. 이 배열에서 각 색상의 양말이 몇 개씩 있는지 파악한 후, 같은 색상의 양말이 몇 쌍(pair)이나 만들어질 수 있는지를 계산해야 합니다. 입력값:첫 번째 줄에는 양말의 총 개수를 나타내는 정수 n이 주어집니다.두 번째 줄에는 각 양말의 색상을 나타내는 n개의 정수 배열 ar이 주어집니다. 각 정수는 특정 색상을 나타냅니다. 출력값:같은 색상의 양말이 몇 쌍이나 만들어질 수 있는지를 나타내는 정수 값을 출력합니다. 예시:입력:910 20 20 10 10 30 50 10 20출력:3  설명:위의 예시에서 10 색상의 양말은 4개가 있으며, 2개의 페어를 만들 수 있습니다...
[Data] CSV 파일의 데이터 병합 문제
·
Programming/CodingTest
문제: CSV 파일의 데이터 병합여러 개의 CSV 파일이 주어집니다. 각 파일에는 동일한 구조의 데이터가 포함되어 있으며, 하나의 열은 고유 ID를 가지고 있습니다.  모든 CSV 파일을 병합하여 하나의 CSV 파일로 만들고, 고유 ID를 기준으로 중복된 항목을 제거한 후, 병합된 데이터를 새로운 CSV 파일에 저장하세요.  입력 형식로그 파일은 다음과 같은 형식을 가집니다.CSV 파일 경로의 리스트 (예: csv_files = ["data1.csv", "data2.csv", "data3.csv"])CSV 파일 내용data1.csv:id,name,value1,Alice,1002,Bob,200data2.csv:id,name,value2,Bob,2503,Charlie,300data3.csv:id,name,v..
[Data] 로그 파일에서 에러 분석 문제
·
Programming/CodingTest
문제: 로그 파일에서 에러 분석여러 개의 서버 로그 파일이 주어집니다. 각 로그 파일에는 여러 줄의 로그 항목이 있으며, 각 로그 항목은 타임스탬프, 로그 레벨(ERROR, INFO, WARNING 등), 그리고 메시지를 포함합니다.각 로그 파일의 경로가 리스트로 주어질 때, ERROR 로그 항목의 개수를 세고 가장 최근의 ERROR 로그 메시지를 출력하는 프로그램을 작성하세요.  입력 형식로그 파일은 다음과 같은 형식을 가집니다.로그 파일 경로의 리스트 : (예: log_files = ["server1.log", "server2.log", "server3.log"])로그 파일 내용:server1.log:2023-07-07 12:00:00 ERROR Something went wrong2023-07-07..
[Data] 로그 파일 집계 문제
·
Programming/CodingTest
문제 : 로그 파일 집계설명 :웹 서버에서 나온 큰 로그 파일이 있습니다. 로그 파일의 각 줄에는 타임스탬프, 클라이언트의 IP 주소 및 응답 시간이 밀리초 단위로 포함되어 있습니다. 로그 파일을 읽고 IP 주소별로 데이터를 집계한 후 각 IP 주소에 대한 평균 응답 시간을 반환하는 Python 함수를 작성하세요.  입력 형식로그 파일(logfile.txt)은 다음과 같은 형식을 가집니다:# makefile2023-07-07T14:48:00Z 192.168.1.1 2002023-07-07T14:48:02Z 192.168.1.2 3052023-07-07T14:48:05Z 192.168.1.1 1802023-07-07T14:48:10Z 192.168.1.3 2102023-07-07T14:48:15Z 192...
[이코테] [5] 다이나믹 프로그래밍 ( 동적계획법 )
·
Programming/CodingTest
다이나믹 프로그래밍 조건1. 최적 부분 구조 : 큰 문제를 작은 문제로 나눌 수 있다.2. 중복되는 부분 문제 : 동일한 작은 문제를 반복적으로 해결합니다. 예제1) 피보나치 수열def fibo(x): if x == 1 or x == 2: return 1 return fibo(x-1) + fibo(x-2)print(fibo(4)) 메모리제이션 기법- 한번 계산한 결과를 메모리 공간메 메모하는 기법- 위의 피보나치 수열에 대입해 볼 때, 이미 계산된 함수를 생략할 수 있는 장점  예제2) 개미전사- 개미 전사가 식량창고를 선택적으로 약탈하여 식량을 뺏을 때 가장 큰 식량을 얻을 수 있도록 해야합니다.- 정찰병에게 들키지 않고 식량창고를 약탈하기 위해선 최소한 한칸 이상 떨어진 식량창..
[이코테] [4] 정렬-Sort
·
Programming/CodingTest
선택정렬- 가장 작은 데이터를 선택해 맨 앞에 있는 데이터와 바꾸는 것을 반복1) 0 5 9 7 32) 0 3 9 7 53) 0 3 5 7 9# 예제 - 이중 반복문# 시간복잡도 : O(N제곱)array = [7,5,9,0,3,1,2]for i in range(len(array)): min_idx = i for j in range(i+1, len(array)): if array[min_idx] > array[j]: min_idx = j array[i], array[min_idx] = array[min_idx], array[i]print(array)  삽입정렬- 처리되지 않은 데이터를 하나씩 골라 적절한 위치에 삽입- 선택 정렬에 비해 구현난이도가 높지만, ..
[이코테] [3] DFS 와 BFS
·
Programming/CodingTest
그래프 탐색 알고리즘 DFS/BFS 탐색 알고리즘으로 많이 등장하는 유형스택 구현 예제stack = []stack.append(5)stack.append(4)stack.pop()stack.append(3)stack.append(2)stack.pop()print(stack)# >>> [5, 3]print(stack[::-1]) # 스택 역순# >>> [3, 5] 큐 구현 예제from collections import dequequeue = deque()queue.append(5)queue.append(4)queue.append(3)queue.popleft()queue.append(2)queue.append(1)queue.popleft()print(queue)# >>> deque([3, 2, 1])queue..
wave35
'Programming/CodingTest' 카테고리의 글 목록 (2 Page)