본문 바로가기

algorithm

(19)
[BOJ 2748] 백준 2748 피보나치 수 2 #입출력 예제 입력1 :: 10 예제 출력1 :: 55 #문제 해결 방법 dp를 사용하는 것이 최선의 방법. dp[91]의 배열을 선언한 후(**n은 최대 90까지 값을 가지므로, 91개의 배열을 선언했다.), dp[0]과 dp[1]을 활용해서, dp[2]를 구하고, dp[1]과 dp[2]을 활용해서, dp[3]을 구하는 방법으로 입력 값 까지 dp값을 구했다. dp[90] 값을 구할 때는, 값이 상당히 커진다. (**2880067194370816120) 따라서 dp배열을 long long으로 선언하는 것이 **포인트**였다. #include using namespace std; void fibonacci (int number){ long long dp[91]; dp[0]=0; dp[1]=1; for(i..
[Algorithm] Decomposition of graphs >> DFS chapter 3 Decompositions of graphs 3.1 Why graphs? - 그래프는 vertex(정점)과 edge(간선)들로 이루어 진다. - undirected(무방향)일 경우 relation은 대칭이다. - directed(방향)일 경우는 대칭이 아니다. 3.1.1 How is a graph represented? ① 인접 행령 (adjacency matrix) vertex(정점)이 v1, v2, … ,vn 이고, n=|V|이면, n*n의 배열로 나타낼 수 있다. - aij = 1 ( vi에서 vj로의 간선(edge)가 있는 경우) aij = 0 ( vi에서 vj로의 간선(edge)이 없는 경우) undirected(무방향) 그래프일 경우 대칭이다. 특정 edge(간선)의 존재를 ..
[JAVA] 페이지 이동 히스토리 기록 #문제 페이지 히스토리를 기억하라. answer는 모든 페이지 이동 경로를 기억하며, 페이지 히스토리는 최근 5개의 페이지 이동 경로를 기억한다. 처음 실행될 때, 페이지는 0페이지 이다. 페이지는 최대 100페이지까지 있다. #입력값 예시 [다음 페이지로 이동] : 다음 페이지로 이동 [이전 페이지로 이동] : 이전 페이지로 이동 [페이지 히스토리 뒤로 가기] : 최대 5개로 저장된 히스토리에서 뒤로 이동 [페이지 히스토리 앞으로 가기] : 현재 열람한 히스토리 페이지의 앞으로 이동 [지정한 페이지로 이동 : n 페이지로 이동] : n 페이지로 이동한다 **주의할 점 : 페이지 히스토리 이동 시에는, 히스토리를 열람하는 것이기 때문에, 새로 추가되는 히스토리 없다.** #예시 #1 ## 다음 페이지로 ..