본문 바로가기

728x90
반응형

Study

(73)
[백준] 11047. 동전 0(using python) * 문제의 저작권은 백준에 있습니다. https://www.acmicpc.net/problem/11047 11047번: 동전 0 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) www.acmicpc.net 문제 준규가 가지고 있는 동전은 총 N종류이고, 각각의 동전을 매우 많이 가지고 있다. 동전을 적절히 사용해서 그 가치의 합을 K로 만들려고 한다. 이때 필요한 동전 개수의 최솟값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,0..
[python] 단어의 첫번째 모음 기준으로 split 하는 함수 입력 받은 word의 첫 번째 모음 기준으로 split 하는 함수를 만들어 보자 def split(word): vowels = ['a', 'e', 'o', 'i', 'u'] for _ in word: if _ in vowels: return word[:word.index(_)], word[word.index(_):] word = 'goat' word2 = 'sheep' print(word) print(word2) ## 출력 결과 ## ('g', 'oat') ('sh', 'eep') 위와 같이 구현을 하면 소문자로 받은 'goat', 'sheep' 과 같은 단어들은 ('g', 'oat'), ('sh', 'eep') 과 같이 잘 출력이 될 것이다. 하지만, 대문자로 입력을 받는다면 어떻게 될까? word =..
[Spark] chapter 2 스파크 간단히 살펴보기 Chapter 2. 스파크 간단히 살펴보기 스파크 기본 아키텍처 '컴퓨터' 라고 하면, 집이나 직장 책상 위에 놓인 장비 한대를 떠올림, 이 컴퓨터는 영화를 보거나 문서작업을 하기 아주 적합함. 한 대의 컴퓨터로 수행하기 힘든 작업이 존재, 특히 대용량 데이터(빅데이터)를 처리하는 경우 한 대의 컴퓨터는 대규모 정보를 연산할 만한 자원이나 성능을 갖지 못함, 연산이 가능하더라도 많은 시간이 소요 컴퓨터 클러스터는 여러 컴퓨터의 자원을 모아 하나의 컴퓨터처럼 사용할 수 있게 만듦. 클러스터 구성하는 것만으로는 부족, 작업을 조율할 수 있는 프레임워크가 필요(스파크) 스파크 어플리케이션 드라이버 프로세스와 익스큐터 프로세스로 구성 드라이버 프로세스(필수 프로세스) 클러스터 노드 중 하나에서 실행 main()..
[Spark] chapter 1 아파치 스파크란? Chapter 1. 아파치 스파크(Apache Spark)란? 가장 활발하게 개발되고 있는 병렬 처리 오픈소스 엔진, 통합 컴퓨팅 엔진이며 클러스터 환경에서 데이터를 병렬로 처리하는 라이브러리 집합 단일 노트북 환경에서부터 수 천대의 서버로 구성된 클러스터까지 다양한 환경에서 실행 가능 1.1 스파크 등장 배경 새로운 처리 엔진과 프로그래밍 모델이 필요한 이유? 컴퓨터 어플리케이션과 하드웨어의 바탕을 이루는 경제적 요인의 변화 프로세서의 성능 향상이 해마다 빨리지고 있으며, 어플리케이션은 코드를 수정하지 않아도 자연스럽게 빨라지고 있음. 대규모 어플리케이션은 이런 경향에 맞춰 만들어져, 대부분 단일 프로세서에서만 실행 되도록 설계 대규모 데이터 처리를 프로세서의 성능 향상에 맡겼던 것 하드웨어 성능의 성..
[Numpy] random -. seed : 랜덤값을 설정값 -. rand : 균등분포로 난수를 발생 -. randn : 정규분포로 난수를 발생 -. randint : 균등분포로 정수값을 발생 -. suffle : 행렬 데이터를 섞어 줌. -. choice : 특정 확률로 데이터를 선택 1. seed np.random.seed(1) result1 = np.random.randint(10, 100, 10) np.random.seed(1) result2 = np.random.randint(10, 100, 10) np.random.seed(2) result3 = np.random.randint(10, 100, 10) print(result1) print(result2) print(result3) ######################..
[Numpy] linspace, logspace 함수 linspace : 설정한 범위에서 선형적으로 분할한 위치의 값을 출력 logspace : 설정한 범위에서 로그로 분할한 위치의 값을 출력 print(np.linspace(0,100,5)) print() print(np.logspace(2,4,3)) ######################################### [ 0. 25. 50. 75. 100.] [ 100. 1000. 10000.] 예를 들어서, 30세에 연봉이 $100,000 이고, 60세에 $1,000,000 일때, 연봉이 선형으로 증가, 지수함수로 증가하는 두 경우에서의 40세, 50세 연봉을 출력하는 경우 아래와 같이 활용할 수 있다. age_30 = 100000 age_60 = 1000000 print(np.linspace(a..
[Numpy] 행렬 데이터의 결합 na1 = np.random.randint(10, size=(2,3)) na2 = np.random.randint(10, size=(3,2)) na3 = np.random.randint(10, size=(3,3)) print(na1) print() print(na2) print() print(na3) print() print(np.concatenate((na1, na3))) print() print(np.concatenate((na2, na3), axis=1)) print() print(np.c_[np.array([1,2,3]), np.array([4,5,6])]) print() print(np.r_[np.array([1,2,3]), np.array([4,5,6])]) [[9 6 5] [7 4 8]] [..
[Numpy] Numpy 행렬값 치환하기 [ 문 제 1 ] 1. 100 ~ 130 까지 랜덤한 숫자를 가지는 8*8 행렬을 만들고, 2. 3의 배수는 fiz, 5의 배수는 buz, 3과 5의 배수는 fbz 문자열로 치환 1. 100 ~ 130 까지 랜덤한 숫자를 가지는 8*8 행렬 만들기 import numpy as np # random.randint(low, high=None, size=None, dtype=int) datas = np.random.randint(100, 130, size=(8,8)) print(datas) [[108 125 103 100 102 103 108 110] [118 110 105 106 109 121 112 106] [101 123 127 127 123 129 107 118] [114 113 129 108 127 ..

728x90
반응형