[백준] 10826번 : 피보나치 수 4 (파이썬)
·
Algorithm/DP
DP로 해결 https://www.acmicpc.net/problem/10826 10826번: 피보나치 수 4 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net (1) 처음 내 코드 (런타임 에러 - 실패) # 피보나치 수4 (실버5) import sys n = int(sys.stdin.readline()) dp = (n + 1) * [0] dp[0] = 0 dp[1] = 1 for i in range(2, n + 1): dp[i] = (dp[i - 1] + dp[i - 2]) print(dp[n]) 문..
C++ 이중 포인터 완벽 이해
·
Computer Science/Algorithm
이중 포인터 포인터를 가리키는 포인터는 다른 포인터의 주소를 보유하는 포인터로 생각하면 된다. 1) 단일 포인터 - int에 대한 일반 포인터 : 하나의 별표(*)만 사용해서 선언 int* ptr; 2) 이중 포인터 - int에 대한 포인터를 가리키는 포인터 : 두개의 별표(**)를 사용해서 선언 int** ptrptr; ▪︎ 단일 포인터와 이중 포인터 사용 예시 int value = 5; int* ptr = &value; cout
백준 자바 제출 방법
·
Algorithm
▪︎ 클래스명은 'Main'으로, 패키지는 없어야 함. public class Main { public static void main(String[] args) { // ... } } ▪︎ BufferedReader, BufferedWriter : Scanner나 sysout보다 속도가 빠르기 때문에 사용 1. 입력 // 엔터로 구분하여 입력을 받음. BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); // 띄어쓰기로 구분하는 경우에는 StringTokenizer 사용 StringTokenizer st = new StringTokenizer(br.readline()); 2. 출력 BufferedWriter bw = new B..
Dijkstra 알고리즘
·
Computer Science/Data Structure
δ(A, B) : A->B로 가는 최단경로 w(A, B) : A와 B 사이의 연결된 edge의 weight if) A와 B 사이에 연결된 edge의 weight = 5 -> w(A,B) = 5 if) A와 B 사이에 edge가 X -> w(A, B) = ∞ (갈 수 없으므로) Single-Source Shortest Paths 시작 정점(s)이 하나 주어졌을 때, s에서 다른 모든 노드로 향하는 shortest path를 찾는 문제 Dijkstra Algorithm - S라는 이미 방문한 정점들에 대한 set 유지 -> 처음엔 비어있고, 시작과 동시에 시작 정점이 s에 들어가게 된다. - D라는 distance array를 정점 수만큼 유지 -> D[i]는 현재까지 밝혀진 경로들 중 최단 경로 (d(s,..
Chapter3 - GoBackN과 Selective Repeat
·
Computer Science/Computer Network
Go-Back-N과 Selective Repeat의 차이 - time out이 발생했을 때 어떻게 처리하냐가 이 둘의 큰 차이점 ▪︎ Go-back-N - N개를 실행하다 문제 발생 시 다시 뒤로 간다. - sender는 ACK를 받지 않고 최대 N개까지 파이프라인 형식으로 보낼 수 O - receiver는 오직 cumulative ack를 보냄. - 항상 자신이 정상적으로 받았던 마지막 seq #의 packet에 대해서만 ACK를 보냄. ex) 3번을 보냄. -> seq # 0,1,2,3에 대한 패킷은 모두 정상적으로 받았음을 의미 - 순서에 맞지 않게 온 packet은 모두 무시 -> gap은 허용 X - sender는 ack를 아직 받지 않은 가장 오래된 패킷에 대해 timer를 실행 (N개 단위로..
Chapter 3 - Transport layer
·
Computer Science/Computer Network
Transport services and protocols - 서로 다른 host에서 실행되는 application 프로세스 사이에 논리적인 통신연결을 만들어준다.(논리적인 선을 만들어주는게 X) - transport 프로토콜은 end system 안에서 동작 (network core에선 구현 필요 X) - sender (in application layer): segment 단위로 application message들을 쪼개서, network layer로 전송 - receiver (in transport layer): segment를 message로 재조립 후, application layer로 전송(어느 socket으로 보낼지 결정 후 전송) - Internet application에서는 2개의 tr..
_은선_
esssun.log