분류 전체보기
-
백준 11726 - 2 x n 타일링 (c+백준 algorithm 2020. 4. 6. 01:16
=> DP 문제이다. => 2 x n 크기의 사각형이 있을 때, 맨 오른쪽에 타일을 채워 넣는 경우를 생각해보자. 1. ( 2x 1 ) 타일이 세로로 세워져 있는 경우 2. (2 x 1 ) 타일이 가로로 두개 놓여 있는 경우 => 위의 경우를 보고 점화식을 세울 수 있다. * arr[i] : i 크기의 사각형이 있을 때 타일을 놓을 수 있는 방법의 배열 arr [ i ] = arr [ i -1 ] + arr[ i -2 ] => 위의 점화식을 사용하여 간단하게 구현가능하다. => 초기배열값은 넣어주어야 한다. => arr[1] = 1, arr[2] = 2 => arr에 넣을때 10007로 나눠주지 않으면 int의 범위를 벗어나는 일이 생긴다. 배열에 값을 넣으면서 나눠서 넣어주도록 해야 한다. #inclu..
-
백준 1463 - 1로 만들기백준 algorithm 2020. 4. 6. 00:34
=> DP 문제이다. => 내가 구해야 하는 것을 우선적으로 문자로 써본다. 내가 구하고자 하는 것 : N 을 1로 만드는데 필요한 최소 연산 횟수 가능한 경우의 수 : 1. i 가 3으로 나누어 떨어질 때 - arr[ i/3 ] + 1 2. i 가 2로 나누어 떨어질 때 - arr[ i/2 ] + 1 3. i 에서 1을 뺄 때 - arr[ i - 1 ] + 1 => 위의 경우 세 가지가 있는 것을 알 수 있다. => DP에는 Top-down 방식과 Bottom-up 방식이 있다. => 본인은 Bottom-up 방식을 선호한다. (Top-down은 재귀를 쓰는데, 재귀를 쓰다 보면 헷갈린다....) *** 둘 중 어느것이 좋다는 것은 없다. 본인이 원하는 방식으로 사용하면 된다. #include #inc..
-
백준 11576 - Base Conversion백준 algorithm 2020. 4. 5. 23:15
=> 해당 문제는 원래의 A진법의 수를 10진법으로 바꾼 후, 정이가 사용하는 B진법으로 바꾸는 문제이다. => A진법을 10진법으로 바꾸기 위해서 아래의 문제를 확인하면 된다. https://codingham.tistory.com/117 백준 2745 - 진법 변환 => 진법 변환 2와 달리 B 진법으로 표시되어 있는 수를 10진법으로 변환하면 되는 문제이다. *** 참고 : https://codingham.tistory.com/116 백준 11005 - 진법 변환 2 => 간단한 진법 변환 문제이다. => 진법 변.. codingham.tistory.com =>10진법을 어떠한 n 진법으로 바꾸기 위해서 아래의 문제를 확인하면 된다. https://codingham.tistory.com/116 백준 ..
-
세션(Session) 과 쿠키(Cookie)Spring 2020. 4. 3. 11:36
세션, 쿠키 1. 세선(Session) 과 쿠키(Cookie) => 응답을 한 뒤, 연결을 끊음 : Connectionless Protocol => 서버에 연결되어있는 클라이언트가 여러개가 있을 수 있으므로, 위와 같은 방법을 사용 => 서버의 효율적인 사용을 위해 사용 - 세션 쿠키 : 클라이언트와 서버의 연결 상태를 유지해주는 방법 - 세션 : 서버에서 연결 정보를 관리 - 쿠키 : 클라이언트에서 연결 정보를 관리 => 둘다 연결상태를 유지해주지만, 위치가 다름. 2. HttpServletRequest 를 이용한 세션 사용 3. HttpSession을 이용한 세션 사용 => 세션을 바로 받아, getSession 필요 없이 setAttribute 을 하면 됨 4. 세션 삭제 => invalidate(..
-
백준 2745 - 진법 변환백준 algorithm 2020. 4. 1. 01:40
=> 진법 변환 2와 달리 B 진법으로 표시되어 있는 수를 10진법으로 변환하면 되는 문제이다. *** 참고 : https://codingham.tistory.com/116 백준 11005 - 진법 변환 2 => 간단한 진법 변환 문제이다. => 진법 변환의 알고리즘을 알아야한다. ex) 11 을 3진법으로 나타내고자 한다. 11 / 3 = 3 ... 2(나머지) 3 / 3 = 1 ... 0 1/3 = 0 ... 1 =>의 결과로 102(3) 의 결과를 얻을 수.. codingham.tistory.com => 알고리즘 B 진법 수 N 을 10진법으로 나타내기 102 (3) = (1 *3^2) + (0* 3^1) + (2* 3^0) 위의 식처럼 각 수에 따라 승수는 줄어들게 되고 각 자리에 해당되는 수를 ..
-
백준 11005 - 진법 변환 2백준 algorithm 2020. 4. 1. 01:05
=> 간단한 진법 변환 문제이다. => 진법 변환의 알고리즘을 알아야한다. ex) 11 을 3진법으로 나타내고자 한다. 11 / 3 = 3 ... 2(나머지) 3 / 3 = 1 ... 0 1/3 = 0 ... 1 =>의 결과로 102(3) 의 결과를 얻을 수 있다. => 위와 같은 알고리즘을 실행하기 위해서는 stack을 사용하면 손쉽게 해결할 수 있다. => stack 은 두개의 다른 자료형을 넣을 수 없다. => 10이 넘는 숫자는 A .... Z로 표현할 수 있다. => 아스키코드를 이용하여 해당 숫자를 표현하였다. #include #include #include using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(..