전체 글(140)
-
백준 [ALGORITHM] - 덱 (10866)
from collections import deque import sys N = int(sys.stdin.readline()) dq = deque([]) def push(n): dq.appendleft(n) def pushb(n): dq.append(n) def pop(): if len(dq) != 0: a = dq[0] dq.popleft() print(a) else: print("-1") def popb(): if len(dq) != 0: a = dq[-1] dq.pop() print(a) else: print("-1") def size(): print(len(dq)) def empty(): if len(dq) == 0: print("1") else: print("0") def front(): if ..
2023.04.20 -
실전바이너리분석 - 1장
실전 바이너리 분석이란 책을 읽고나서 공부 한 부분들을 정리하고 이해가 안가는 부분은 더 공부해서 포스팅을 해보려한다. 바이너리 코드 : 컴퓨터가 연산 작업을 수행할 때 0,1로만 표현하는데 이를 바이너리 코드라고 부른다. 실행 가능한 바이너리 파일 : 시스템에 포함된 다양한 프로그램을 모두 분석하려면 각 프로그램이 갖고 있는 코드와 데이터를 추출하여 별도로 저장하는 방법이 필요함. 개중에는 실행시킬 수 있는 바이너리 프로그램이 있는데 이를 실행 가능한 바이너리 파일이라고 부름 컴파일러의 컴파일 과정 : 우리가 c언어로 된 프로그램을 컴파일러를 통해 컴파일한다고 가정해보자. 컴파일러는 c언어를 컴파일하여 해당 프로세서가 구동이 가능하게 만들어야 할 것이다. 따라서 c언어를 프로세서가 이해 가능한 언어로 ..
2023.04.19 -
백준 [ALGORITHM] - 제로 (10773)
간단한 스택 구현 문제. k = int(input()) lst = [] for i in range(k): n = int(input()) if n == 0: lst.pop() else: lst.append(n) print(sum(lst))
2023.04.19 -
백준 [ALGORITHM] - 큐 (10845)
import sys N = int(sys.stdin.readline()) stack = [] def push(n): stack.append(n) def pop(): if len(stack) != 0: a = stack[0] stack.pop(0) print(a) else: print("-1") def size(): print(len(stack)) def empty(): if len(stack) == 0: print("1") else: print("0") def front(): if len(stack) == 0: print("-1") else: print(stack[0]) def back(): if len(stack) == 0: print("-1") else: print(stack[-1]) func_dic..
2023.04.18 -
[STUDY] 유클리드 호제법
이 포스팅은 유클리드 호제법을 공부하고 나서 백준문제를 해결하고 정리를 위해 올리는 글입니다. 유클리드 호제법은 최대공약수,최소공배수를 쉽게 구할 수있는 공식들 중에 하나이다. 방법은 또 매우 간단한데, 최대공약수를 구하기 위해서 예를들어 A와 B라는 수가 각각 주어진다면 최대공약수를 구하기 위해서는 AxB를 Bx(A%B)로 나눠주고 나온 나머지를 r이라고 할때 r이 0이 아니라면, 이를 다시 두번째 항 (Bx(A%B))과 나머지 연산을 해서 r을 또 구하고.. 이게 다시 0이 아니라면 또 다시 두번째 항과 나눠주고.. 이것을 반복해서 나머지가 0인 값이 최대공약수가 된다. 최소공배수는 여기서 구한 최대공약수를 이용해서 아주 쉽게 구할 수 있다. a와 b의 최소공배수는 a와 b의 곱을 a와 b의 최대공약..
2023.04.17 -
백준 [ALGORITHM] - 최대공약수와 최소공배수 (2609)
import math n,n2 = map(int,input().split()) a = math.gcd(n,n2) b = math.lcm(n,n2) print(a) print(b) MATH 라이브러리로 해결하긴 했는데 문제가 원하는 방향은 유클리드 호제법을 이용한 해결이기 때문에 이를 이용한 방법으로도 해결한 뒤 다시 포스팅 해볼 예정
2023.04.17