전체 글43 [1] 객체 지향(Object Oriented Programming)이란? * 저의 면접을 대비해서 여러 사이트를 참고하여 제가 이해하기 쉽게 정리한 것입니다.* 혹시라도 문제가 된다면 비공개조치 하겠습니다.* 레퍼런스는 항상 표기 하겠습니다. * 저는 두괄식을 좋아해서 모든 결론이 질문 밑에 달려있습니다. 지금 제일 먼저 생각나는거는 C와 C++, JAVA의 차이점이 뭔가요?? 지만... 이번장에서는 절차지향과 객체지향의 차이부터 명확하게 알고 가죠! 결론부터 말하기 위해서, 예를 들어서 말씀드리자면.... 반짝거리는 장식이 달려있는 크리스마스 트리를 만든다고 합시다. 절차지향 받침대를 만든 뒤, 나무를 만들어서 그 위에 꽂고, 잎 위에 두를 장식을 만들어서 두르고, 전원을 연결해서 켜야 작동한다. 위의 과정에서, 순서가 조금이라도 바뀌면 장식에 불이 들어오지 않는다. 객체지.. 2017. 12. 8. [DP] 백준 #11047 / 동전 0 (+ Tokenizer 활용!) http://snacky.tistory.com/10 처음에 런타임에러 엄청났다.... 알고보니까 K가 1억이 넘어가서 배열로써는 감당이 되지 않기 때문에, Bottom-Up 방식으로 풀면 안된다는 사실을 깨달았다. 그리고 다시 풀었다 ㅠㅠ 겁나 쉬운건데 런타임때문에 절절맸던 나란 바보.. 이 문제는 단순히 Coin DP보다는 훨씬 쉽다. 문제 조건중에서, 입력 부분을 보면, 마지막 줄에 있는 내용 때문에 Top-Down 방식으로 여러문제 생각할 필요가 없다. 아 그리고!!! 이번 문제 덕분에 Tokenizer도 공부할 수 있게 됐다. 일단 코드를 먼저 뿌리고, Tokenizer에 대해서 아라보자. [Code] 12345678910111213141516171819202122232425262728293031.. 2017. 12. 3. [알고리즘] Dynamic Programming (동적 계획법) 알고리즘의 꽃(이라고 생각합니다) 동적 계획법! 흔히 줄여서 DP라고 부르죠. 저는 개인적으로 이게 제일 어렵습니다 ㅠㅠ 그래서 오늘 한 번 뿌셔보려고 합니다 ** 이번 파트는 코드그라운드의 Codeground Note와 여러 사이트를 참고해가면서 포스팅했습니다! 동적 계획법(Dynamic Programming) 복잡한 문제를 여러 개의 작은 부분 문제(Sub-Problem)로 나누어 해결하는 방법 쓰는 이유?지금은 속도가 중요한 시대죠! 동적 계획법의 핵심인 Memoization을 이용하면 큰 문제로부터 빠른 속도로 최적의 해를 찾아낼 수 있기 때문입니다. 예시DP 설명할 때 항상 등장하는 DP 예시의 조상님, 피보나치 수열 되시겠습니다! 피보나치 수열은 모두가 알다시피, 1 1 2 3 5 8.... .. 2017. 12. 3. [DP] 백준 #9461 / 파도반 수열 1분 만에 풀렸다. 문제에서 힌트를 다 줬는데, 한 가지 유의할 점은 값이 int 범위를 넘어가므로 long으로 선언해줘야 틀리게 나오지 않는다. 단순한 문제이므로 자세한 설명은 필요 없을듯 하다. [Code] 12345678910111213141516171819202122232425import java.util.Scanner; public class boj_9461 { public static void main(String args[]) { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); long DP[] = new long[101]; DP[0] = 0; DP[1] = 1; DP[2] = 1; for(int i=0;i 2017. 12. 1. 이전 1 ··· 6 7 8 9 10 11 다음