99클럽 코테 스터디 16일차 TIL
·
devlog/TIL
뜨문뜨문한 TIL...이대로 괜찮은가? 🤔 오늘의 문제백준 25757 – 임스와 친구들LeetCode - Number of 1 Bits백준 25757 – 임스와 친구들문제요약게임 종류(Y/F/O)에 따라 참여 인원 수가 다름 (2/3/4)중복된 닉네임 제거 후, 최대 몇 게임 가능한지 계산풀이 전략입력값을 받은 후, set으로 중복된 닉네임 제거게임에 따라 추가로 필요한 인원수를 dict로 저장 중복이 제거된 플레이어 이름에서 선택된 게임에서 필요한 인원수를 나눈값만큼 게임 플레이 가능 코드import sysprmpt = sys.stdin.readline().split()names = [sys.stdin.readline().strip() for _ in range(int(prmpt[0]))]games ..
99클럽 코테 스터디 11일차 TIL
·
devlog/TIL
오늘의 문제706. Design HashMap문제 요약직접 해시맵 구현하기 (내장 hashmap 라이브러리 사용X)key 범위: 0 최대 10^4번의 호출풀이 전략튜플 사용고정 크기 버킷 배열 사용: self.map = [...]충돌 해결 방식 → 각 버킷에 (key, value) 튜플을 리스트로 저장class MyHashMap: def __init__(self): self.size = 10000 # 10^4 operation 대비? self.map = [[] for _ in range(self.size)] def put(self, key: int, value: int) -> None: index = hash(key) % self.size f..
99클럽 코테 스터디 10일차 TIL
·
devlog/TIL
오늘의 문제LeetCode 347: Top K Frequent ElementsLeetCOde 2283: Check if Number Has Equal Digit Count and Digit Value문제 요약Top K Frequent Elements nums 배열에서 가장 많이 등장한 k개의 숫자 return (배열로) 시간복잡도 O(nlogn) 풀이 전략시간복잡도 O(nlogn) 이라, brute-force는 불가능Counter 함수와 Heap을 사용해서 풀이Counter 함수: 주어진 배열에서의 빈도수를 dictionary 형태로 생성 -> 시간복잡도 O(n)Heap: 빈도 높은 k개를 추출하기 위해 사용 -> 시간복잡도 O(nlogn) 코드from collections import Counterim..
99클럽 코테 스터디 9일차 TIL
·
devlog/TIL
문제BOJ 3986 - 좋은 단어🔍 문제 요약문자열에서 같은 알파벳끼리 짝을 지어야 함선이 교차하지 않도록, 즉 스택 구조처럼 처리해야 함모든 문자가 정확히 한 번만 짝지어지면 → "좋은 단어"📌 풀이 전략:문자를 하나씩 순회하며:스택이 비었거나 top이 다르면 → append()top과 현재 문자가 같으면 → pop()단어 순회 후 스택이 비어 있으면 → 좋은 단어로 카운트python에는 peek()이 없으므로, 배열 마지막 요소를 확인하는 것으로 대체👩‍💻 코드import sysn = int(sys.stdin.readline())count = 0for _ in range(n): word = sys.stdin.readline().strip() stack = [] for c in ..
Transactional + DDD
·
devlog/TIL
2019년 12월 16일에 notion에 작성한 글을 옮겨 왔다.@Transactional + DDDfun requestRefund(request: RefundRequest): RefundResponse { val paymentInfo = 결제클라이언트.get결제정보(request.orderNo) return refund(refundDomainService.register(request, paymentInfo))}보통 외부의 호출이 일어날떄 transaction을 분리하는 경우는 다음과 같다.transaction이 이미 열렸고, 외부 호출을 하는 경우 timeout 같은 에러 발생 시, 지연된 시간만큼 transaction을 물고 있기 때문에 좋지 않다. → db lock 발생 가능 (그런데 ..
[TIL] fluentd & NGINX
·
devlog/TIL
다 설정하고 나니까 이런 에러가 로그에 남아있다 \[types removal\] Specifying types in bulk requests is deprecated. 이것은 대체 무슨 로그? https://www.elastic.co/guide/en/elasticsearch/reference/master/removal-of-types.html#_why_are_mapping_types_being_removed 엘라스틱 서치 버전8부터는 mapping type이 없어진다고 한다. 아마 엘라스틱서치 어딘가에서 mapping type을 계속 쓰고있어서 그런것 같다. 아니면 내 fluentd 설정인가? 이런 저런 이유라는데...어 읽어도 잘 모르겠다 지금은: https://www.elastic.co/guide/e..
뚝딱거리는 초보 devops의 TIL
·
devlog/TIL
max_map_count가 뭔가 https://stackoverflow.com/questions/11683850/how-much-memory-could-vm-use 이것이다. linux kernel Sonarqube의 스펙은 잘 맞춰야 한다 그렇지 않으면 이런 에러가 나기때문이다. 2020.08.28 02:28:49 ERROR es[][o.e.b.Bootstrap] node validation exception [1] bootstrap checks failed [1]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] ERROR: [1] bootstrap checks failed docker..
[TIL] ExecutorService / Event Driven Programming / Bulk Insert / DiscriminatorValue / AuditingEntityListener
·
devlog/TIL
TIL = Today I Learned | 알게된 내용, 현재로서는 잘 모르겠는 내용을 적는 포스트 Event driven programming - contd 이것에 대해서 잘 모르겠다! 일단은 이 article을 봤음 https://engkimbs.tistory.com/827 ExecutorService (let's deep dive) 코드리뷰를 하다가 이런 클래스를 봤다. threadpool을 정해진 개수만큼 유지하고, concurrent programming 을 할 수 있도록 도와주는 service 인 것 같다. java.util.concurrent 패키지에 있는 것을 보고 추측함. newFixedThreadPool 이거는 정해진 thread count 만큼 pool 을 유지하고 (shared un..