Binary Search
바이너리 서치 left = 1 right = n while(left<right): mid = left + int((right-left) / 2) if isBadVersion(mid): right = mid else: left = mid + 1 return left
바이너리 서치 left = 1 right = n while(left<right): mid = left + int((right-left) / 2) if isBadVersion(mid): right = mid else: left = mid + 1 return left
문제풀이 요령 재귀로 여러번 써야되는 것을 memoization 기법으로 계산 수를 줄이는데 효과적이다. 따라서 중복 계산이 많은 문제(sub array)에서 쓰면 좋다. 이 유형은 가장 흔한 유형이기 때문에 한 가지 패턴을 정해두고 항상 같은 형태로 구현해버리면 작성도 쉽고 버그 찾는 것도 쉬워지니 자신만의 패턴을 만드는 것이 좋다. c...
BST(Binary Search Tree) 루트의 왼쪽은 루트보다 작은 값, 오른쪽은 루트보다 큰 값이 들어간다. 모든 값은 unique하다고 가정한다.. Time Complexity는 O(h) - h는 높이다.
All, Any 파라미터로 iterable를 받아서 각 item들이 모두가 참일때 true를 반환하는 것이 all, 하나라도 참일때 true를 반환하는 것이 any이다. return all(r ==0 or c == 0 or matrix[r-1][c-1] == val for r, row in enumerate(matrix...
입출력 a = input() a = input("prompt") print("a" "b" "c") # abc print("a" + "b" + "c") # abc print("a","b","c") # ('a', 'b', 'c') x = "Hello" y = "World!" print(x,y) ...
함수 def function_name(parameter): return something def say_ho(): print("ho~~") say_ho() # ho~~ return값이 void면 indentation으로 다른 실행문을 계속 쓰면 된다. 함수를 탈출하고 싶으면 return 만 써도 된다.(break같은 느낌으로) ...
변수 변수 선언법 a, b = ('string','arr') (a,b) = 'string, 'arr' [a,b] = ['string', 'arr'] a = b = 'string' a = [1,2] b = a # b는 a가 가리키고 있는 object의 주소값을 가리키고 deep copy가 일어나지는 않습니다. ...
Python은 interpreter이다. Interpreter란 한 줄 한 줄 바로바로 해석하고 결과를 보여주는 언어이다. Scalar type int, float, bool, none, null atomic data type Non-scalar type string, tuple,...
# yum install gcc openssl-devel bzip2-devel libffi-devel # cd /usr/src # wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz # tar xzf Python-3.7.3.tgz # cd Python-3.7.3 # ./configure --e...
사용법 사용 흐름 msfconsole -> search -> use -> info -> show options -> set -> exploit -> meterpreter exploit을 할 때에는 플랫폼 -> 서비스 -> 코드를 선택하는 단계로 진행한다. 사용 명령어 use explo...