일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 파이썬
- 주식분석
- Sort
- scrapy
- collections
- 알고리즘
- tensorflow
- 텐서플로
- 딥러닝
- graph
- LSTM
- recursion
- effective python
- python
- NumPy
- 코딩더매트릭스
- GRU
- 하둡2
- RNN
- 하이브
- codingthematrix
- Java
- HelloWorld
- hadoop2
- 그래프이론
- hive
- C
- yarn
- 선형대수
- C언어
- Today
- Total
목록파이썬 (32)
EXCELSIOR
1. 문제 피보나치 수는 F(0) = 0, F(1) = 1일 때, 2 이상의 n에 대하여 F(n) = F(n-1) + F(n-2) 가 적용되는 점화식입니다. 2 이상의 n이 입력되었을 때, fibonacci 함수를 제작하여 n번째 피보나치 수를 반환해 주세요. 예를 들어 n = 3이라면 2를 반환해주면 됩니다. 2. 풀이 1) 내가 작성한 코드 ① Recursion을 이용한 풀이 : 풀이는 맞지만 숫자가 커지게 되면 시간이 오래걸려 출력이 되지 않는 문제가 발생했다. def fibonacci(num): if num < 2: return num else: return fibonacci(num-1)+fibonacci(num-2) # 아래는 테스트로 출력해 보기 위한 코드입니다. print(fibonacci(..
1. 문제 행렬의 덧셈은 행과 열의 크기가 같은 두 행렬의 같은 행, 같은 열의 값을 서로 더한 결과가 됩니다. 2개의 행렬을 입력받는 sumMatrix 함수를 완성하여 행렬 덧셈의 결과를 반환해 주세요. 예를 들어 2x2 행렬인 A = ((1, 2), (2, 3)), B = ((3, 4), (5, 6)) 가 주어지면, 같은 2x2 행렬인 ((4, 6), (7, 9))를 반환하면 됩니다.(어떠한 행렬에도 대응하는 함수를 완성해주세요.) 2. 풀이 1) 내가 작성한 코드 - 임시 리스트를 만들어 이중 for 문을 통해 문제를 해결하였다. def sumMatrix(A,B): answer = [] for i in range(len(A)): tmp=[] for j in range(len(A[i])): tmp.a..
1. 문제 두 수를 입력받아 두 수의 최대공약수와 최소공배수를 반환해주는 gcdlcm 함수를 완성해 보세요. 배열의 맨 앞에 최대공약수, 그 다음 최소공배수를 넣어 반환하면 됩니다. 예를 들어 gcdlcm(3,12) 가 입력되면, [3, 12]를 반환해주면 됩니다. 2. 풀이- 풀이에 앞서 최대공약수를 구하는 방법인 유클리드 호제법에 대해 공부해 보자 1) 유클리드 호제법 두 정수 a, b의 최대공약수를 G(a, b)라고 하자. 정수 a, b, q r (b ≠ 0)에 대하여 a = bq + r,이면 G(a, b) = G(b, r)가 성립한다. 〈증명〉 G(a, b) = g라고 하자. 최대공약수의 성질에 의해 a = a′g, b = b′g이고 G(a′, b′) = 1이다. a = bq + r로부터 r = ..
1. 문제no_continuous함수는 스트링 s를 매개변수로 입력받습니다. s의 글자들의 순서를 유지하면서, 글자들 중 연속적으로 나타나는 아이템은 제거된 배열(파이썬은 list)을 리턴하도록 함수를 완성하세요. 예를들어 다음과 같이 동작하면 됩니다.s가 '133303'이라면 ['1', '3', '0', '3']를 리턴s가 '47330'이라면 [4, 7, 3, 0]을 리턴 2. 풀이 1) 내가 작성한 코드 - 파이썬의 슬라이스 연산기능을 사용하여 문제를 해결하였다. def no_continuous(s): # 함수를 완성하세요 return [s[i] for i in range(len(s)) if s[i] != s[i+1:i+2]] # 아래는 테스트로 출력해 보기 위한 코드입니다. print( no_con..
1. 문제딕셔너리는 들어있는 값에 순서가 없지만, 키를 기준으로 정렬하고 싶습니다. 그래서 키와 값을 튜플로 구성하고, 이를 순서대로 리스트에 넣으려고 합니다. 예를들어 {"김철수":78, "이하나":97, "정진원":88}이 있다면 각각의 키와 값을 ("김철수", 78) ("이하나", 97) ("정진원", 88) 과 같이 튜플로 분리하고 키를 기준으로 정렬해서 다음과 같은 리스트를 만들면 됩니다. [ ("김철수", 78), ("이하나", 97), ("정진원", 88) ] 다음 sort_dictionary 함수를 완성해 보세요. 2. 풀이 1) 내가 작성한 코드 - dictionary → tuple로 바꿔주는 tuple( ) 함수와 정렬해주는 sorted( ) 함수를 사용하여 해결하였다. def sort..
1. 문제 numPY함수는 대문자와 소문자가 섞여있는 문자열 s를 매개변수로 입력받습니다. s에 'p'의 개수와 'y'의 개수를 비교해 같으면 True, 다르면 False를 리턴하도록 함수를 완성하세요. 'p', 'y' 모두 하나도 없는 경우는 항상 True를 리턴합니다. 예를들어 s가 "pPoooyY"면 True를 리턴하고 "Pyy"라면 False를 리턴합니다. 2. 풀이 1) 내가 작성한 코드 - 소문자로 바꿔주는 lower( ) 함수와 개수를 세는 count( ) 함수를 사용하여 해결하였다. def numPY(s): # 함수를 완성하세요 return s.lower().count("p")==s.lower().count("y") # 아래는 테스트로 출력해 보기 위한 코드입니다. print( numPY(..
1. 문제 alpha_string46함수는 문자열 s를 매개변수로 입력받습니다. s의 길이가 4혹은 6이고, 숫자로만 구성되있는지 확인해주는 함수를 완성하세요. 예를들어 s가 "a234"이면 False를 리턴하고 "1234"라면 True를 리턴하면 됩니다 2. 풀이 1) 내가 작성한 풀이 - try: except: 문을 활용하여 문제를 해결하였다. def alpha_string46(s): #함수를 완성하세요 try: if((len(s) ==4 or len(s) ==6) and int(s)): return True else: return False except ValueError: return False # 아래는 테스트로 출력해 보기 위한 코드입니다. print( alpha_string46("a234")..
1. 문제 printTriangle 메소드는 양의 정수 num을 매개변수로 입력받습니다. 다음을 참고해 *(별)로 높이가 num인 삼각형을 문자열로 리턴하는 printTriangle 메소드를 완성하세요 printTriangle이 return하는 String은 개행문자('\n')로 끝나야 합니다. 높이가 3일때* ** *** 높이가 5일때* ** *** **** ***** 2. 풀이 1) 내가작성한 코드 - python은 '*'에 i를 곱한뒤 '\n'을 더해주는 방법으로 문제를 해결하였다. def printTriangle(num): s = "" #함수를 완성하세요 for i in range(1,num+1): s += "*"*i+'\n' return s # 아래는 테스트로 출력해 보기 위한 코드입니다. pr..