2021/07 3

leetcode 1638(브루트포스), 1387(dp), 35(이분 탐색)

1638 https://leetcode.com/problems/count-substrings-that-differ-by-one-character/ 제한조건이 s와 t가 둘다 길이가 100이하이니 그냥 되는대로 구현하면 된다. s의 substring이 t의 substring안에 속하는데 하나만 달라야 한다. class Solution(object): def countSubstrings(self, s, t): #s = "aba" #t = "baba" len_s, len_t = len(s), len(t) ret = 0 for i in range(len_s): for j in range(len_t): diff, k = 0, 0 #print i,j while k+i < len_s and k+j < len_t: #..

haproxy tutorial (basic loadbalancing example)

haproxy에서 라운드로빈으로 로드밸런싱하는 예제를 올린다. 추가적으로 커스터마이징같은거는 한번 돌아가는걸 확인하면 이것저것 해보면서 테스트가 가능하기에 올리지 않는다. haproxy란? : https://leffept.tistory.com/309에 잘 설명되어있다. 몇가지만 가져왔다. 1. HAProxy는 기존의 하드웨어 스위치를 대체하는 소프트웨어 로드 밸런서로, 네트워크 스위치에서 제공하는 L4, L7 기능 및 로드 밸런서 기능을 제공한다. 설치가 쉽고 빠르기에 서비스 이중화(HA- High Availability)를 구성하는데 주로 사용한다. 2. HAProxy는 기본적으로 reverse proxy 형태로 동작한다. (reverse proxy는 서버로 들어오는 요청을 대신 받아서 서버에 전달하고..

data engineering 2021.07.12

leetcode 1823(조세퍼스 문제, 구현), 1448(트리, 재귀), 1396(구현)

1823 https://leetcode.com/problems/find-the-winner-of-the-circular-game/ 딱봐도 문제가 원형 이중연결리스트처럼 생겨서 이걸 만들어서 풀었다. 근데 시간이 많이 느리다.. 뭐지 하고 다른 답을 봤는데 아주 예전에 풀었던 조세퍼스(요세푸스) 문제였다. https://qkqhxla1.tistory.com/707 본지 하두 오래돼서 잊어먹고 있었다. 원형 이중연결리스트. class Node: def __init__(self, v): self.val = v self.next = None self.prev = None class Solution(object): def findTheWinner(self, n, k): start_node = cur_node = ..