일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- BubbleSort
- 알고리즘
- go
- cpu scheduling
- easy
- kubernetes
- Programmers
- LeetCode
- 그리디
- Observer Pattern
- Singleton Pattern
- github
- Backjoon
- Python
- k8s
- mobaXTerm
- docker
- KAKAO
- 백준
- Dynamic Programming
- Kotlin
- java
- GKE
- 파이썬
- Top-down
- golang
- GCP
- 피보나치
- Codility
- Today
- Total
목록알고리즘 (44)
To Be Developer
https://leetcode.com/problems/relative-ranks/[Python 풀이] 불러오는 중입니다... class Solution(object): def findRelativeRanks(self, nums): """ :type nums: List[int] :rtype: List[str] """ # 초기 nums의 인덱스를 저장할 딕셔너리 dic = {} # nums의 크기 size = len(nums) # nums의 크기만큼 비어있는 list 생성 - 결과를 저장 res = [None]*size # size 만큼 반복을 하여 dic변수에 저장 for i in range(size): dic[nums[i]] = i # nums를 오름차순으로 정렬 # nums를 내림차순으로 정렬하지 않는..
https://www.acmicpc.net/problem/1003 1003번: 피보나치 함수 각 테스트 케이스마다 0이 출력되는 횟수와 1이 출력되는 횟수를 공백으로 구분해서 출력한다. www.acmicpc.net # BackJoon 1003 번 : 피보나치 함수 # 문제에서 제시한 테스트 케이스의 갯수 n = int (input ()) # 테스트 케이스의 값 arr = [int(input()) for x in range(n)] # 테스트 케이스들 중 최대 값 mx = max(arr) # 한 번 구한 피보나치의 값은 계속 사용되므로 한 번 계산한 것은 # 또 다시 계산하지 않도록 저장할 피보나치 배열 fibArr = [None] * (mx+1) # 피보나치 함수 def fib(num): # 피보나치를 계..
https://www.acmicpc.net/problem/15953 15953번: 상금 헌터 첫 번째 줄에 제이지가 상상력을 발휘하여 가정한 횟수 T(1 ≤ T ≤ 1,000)가 주어진다. 다음 T개 줄에는 한 줄에 하나씩 제이지가 해본 가정에 대한 정보가 주어진다. 각 줄에는 두 개의 음이 아닌 정수 a(0 ≤ a ≤ 100)와 b(0 ≤ b ≤ 64)가 공백 하나를 사이로 두고 주어진다. www.acmicpc.net [Python 풀이] class KakaoCode(object): # 경우의 수에 따른 상금을 저장해 놓은 stack 변수 stack = [] def __init__(self): # 대회 1의 상금 정보와 인원 수 self.test1 = [ {'rank' : 1, 'prize': 500,..
https://leetcode.com/problems/valid-parentheses/ 불러오는 중입니다... [Python 풀이] class Solution(object): def isValid(self, s): """ :type s: str :rtype: bool """ # stack 변수 stack = [] # 괄호 정보 딕셔너리 bracket = {'{' : '}', '[' : ']', '(': ')'} # string 을 문자 하나하나 반복한다. for i in s: # i 가 괄호 시작이면 stack 에 추가한다. if i == '{' or i =='[' or i=='(': stack.append(i) # 괄호 끝이면 stack 에서 pop 한다. else: # 딕셔너리 정보에 없으면 retu..
https://www.acmicpc.net/problem/10825 10825번: 국영수 첫째 줄에 도현이네 반의 학생의 수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 한 줄에 하나씩 각 학생의 이름, 국어, 영어, 수학 점수가 공백으로 구분해 주어진다. 점수는 1보다 크거나 같고, 100보다 작거나 같은 자연수이다. 이름은 알파벳 대소문자로 이루어진 문자열이고, 길이는 10자리를 넘지 않는다. www.acmicpc.net [Python 풀이] """ *** 문제 설명 *** input Data로 첫 번째 줄에는 학생들의 수를 받는 Integer를 받는다 학생 수 만큼 줄을 입력을 받는데 ' ' 빈 칸으로 데이터를 나눠서 학생의 정보를 등록을 하는데 첫 번째는 학생이름, 그 다음은 국어..
https://www.acmicpc.net/problem/1037 1037번: 약수 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되지 않는다. www.acmicpc.net # 약수의 개수 count = int(input()) # N의 약수 목록 nums = list(map(int, input().split(' '))) # input Data를 오름차순으로 정렬함 nums.sort() ''' 9의 약수 : [3] 10의 약수 : [5, 2] 16의 약수 : 3, [8, 4, 2] 18의 약수 : [9, 6, 3, 2] 20의 약수 : [10, 5, ..