문제주소 programmers.co.kr/learn/courses/30/lessons/67259 내 풀이 answer = 10e9 def dfs(board, pos, n, cost_board): x, y = pos[0][0], pos[0][1] dir = pos[1] cost = pos[2] global answer # 종료조건 # 끝지점 도착 if pos[0] == (n, n): answer = min(answer, pos[2] * 100) return # cost 가 answer보다 커지는건 최솟값이 아니므로 종료 if cost > answer: return # cost_board에 저장된 값이 지금 cost 보다 작다는 것은 이미 방문한 곳이고, 이미 최솟값이므로 종료 if cost_board[x]..
문제주소 programmers.co.kr/learn/courses/30/lessons/64064?language=python3 내 풀이 import re from itertools import product def solution(user_id, banned_id): answer_list = list() banned_list = [] banned_length = len(banned_id) for banned in banned_id: banned = banned.replace("*", ".") p = re.compile(banned) id_list = [] for user in user_id: if len(banned) == len(user) and p.match(user): id_list.append(u..
문제주소 programmers.co.kr/learn/courses/30/lessons/60062 내 풀이 from collections import deque from itertools import permutations # 항상 index 처리가 어렵다. 맨 앞, 뒤 index는 특별하게 확인해주기 def checkVisited(weak, friends): index = 0 visited = [False for _ in range(len(weak))] for friend in friends: dist = 0 while friend >= dist and index < len(weak)-1: visited[index] = True index += 1 dist += weak[index] - weak[inde..
문제주소 카카오 인형뽑기 : https://programmers.co.kr/learn/courses/30/lessons/64061 모의고사 : https://programmers.co.kr/learn/courses/30/lessons/42840 이상한 문자 만들기 : https://programmers.co.kr/learn/courses/30/lessons/12930 K번째 수 : https://programmers.co.kr/learn/courses/30/lessons/42748 내 풀이 && 개선방안 // 카카오 인형뽑기 public int solution(int[][] board, int[] moves) { int answer = 0; int boardSize = board.length; List ..
문제주소 programmers.co.kr/learn/courses/30/lessons/42892 내 풀이 # ✨ 파이썬 기본 재귀 limit이 1000이라 늘려주어야 한다! import sys sys.setrecursionlimit(10**6) class Node: def __init__(self, info): self.data = info[0] self.value = info[1] self.left, self.right = None, None class NodeTree: def __init__(self, parent): self.parent = parent def insert(self, info): self.cur_node = self.parent while True: if info[0][0] < se..
문제주소 leetcode.com/problems/palindrome-number/ leetcode.com/problems/longest-common-prefix/ leetcode.com/problems/linked-list-cycle/ 내 풀이 && 다른 사람 풀이 public static boolean isPalindrome(int x) { String original = String.valueOf(x); StringBuilder reversed = new StringBuilder(); for (int i = original.length() - 1; i > -1; i--) { reversed.append(original.charAt(i)); } return original.equals(reversed...
문제주소 leetcode.com/problems/two-sum/ leetcode.com/problems/reverse-integer/ leetcode.com/problems/remove-duplicates-from-sorted-list/ 내 풀이 && 다른 사람 풀이 public static int[] twoSum(int[] nums, int target) { int[] answer = new int[2]; for (int i = 0; i < nums.length; i++) { for (int j = i + 1; j < nums.length; j++) { if ((nums[i] + nums[j]) == target) { answer[0] = i; answer[1] = j; return answer; } ..
Bash Communication 지난 시간에 셸 스크립트에 대해 학습했다. bash 커뮤니케이션이는 return 값이 존재한다! C언어로 예를 들면, 0는 시스템의 정상종료, 그외 정수 값은 비정상종료를 의미한다. $? 은 최근 실행한 함수의 return 값을 가진 변수를 출력해준다. 자료구조와 알고리즘 알고리즘은 2가지 특성을 가진다. 1. input, output이 있어야 한다. 2. 유한시간 안에 실행되어야 한다. 자료구조는 데이터를 담는 방식이다. 적절한 자료구조를 사용하는 것이 가장 중요하다. 배열+리스트가 90%, 해시맵까지 포함하면 99% 비율로 많이 사용된다. 하지만 트리 등의 구조도 꼭 알아두자! 알고리즘 성능표기 - 점근적 표기법 : 알고리즘에서 input이 커지면서(x > N, 임의..
- Total
- Today
- Yesterday
- OS
- 개발공부일지
- 객체지향
- 코드스쿼드
- 회고
- 모의면접준비
- 우아한테크코스
- javascript
- React
- 운영체제
- 내부코드
- CS
- java
- Transaction
- 알고리즘
- 인증
- 네트워크
- python
- 글쓰기미션
- 학습로그
- 카카오
- JPA
- 월간회고
- 마스터즈코스
- JS
- TCP/IP
- 우테코수업
- TIL
- Spring
- DB
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |