목록강의 (57)
개발자는 기록이 답이다

2. 이진수 출력(재귀) 예시 입력 1 11 예시 출력 1 1011 10진수를 2진수로 바꿀때 나눈 나머지가 2진수가 됩니다. public class Main { public void DFS(int n) { if(n == 0) return; else { System.out.print(n+" "); DFS(n/2); } } public static void main(String[] args) { Main T = new Main(); T.DFS(11); } } 11 5 2 1 목표는 몫이 아니라 나머지이기 때문에 아래처럼 코드를 수정해줍니다. 또한 1011순서로 출력되기 위해 print함수를 DFS호출하는 아래에 넣어줍니다. public class Main { public void DFS(int n) { i..

1. 재귀함수(스택프레임) 예시 입력 1 3 예시 출력 1 1 2 3 public class Main { public void DFS(int n) { if (n == 0) return; else { System.out.print(n + " "); // (1) 3 2 1 DFS(n - 1); System.out.print(n + " "); // (2) 1 2 3 } } public static void main(String[] args) { Main T = new Main(); T.DFS(3); } } 위의 코드에서 보는 것 처럼 출력을 몇번째 줄에서 하느냐에 따라 반환값이 다르게 나타난다. 1번의 경우 3 2 1로 출력되고, 2번은 1 2 3으로 출력된다. 재귀함수 위에 놓는지 아래에 놓는지에 따라 출력..

https://cote.inflearn.com/contest/10/problem/03-03 OnlineJudge cote.inflearn.com (위의 링크는 인프런 로그인 후, 해당 강의를 사지 않으면 접속이 되지 않습니다) 3. 최대 매출 예시 입력 1 10 3 12 15 11 20 25 10 20 19 13 15 예시 출력 1 56 내가 푼 틀린 풀이 (Time: 1519ms Memory: 34MB) - Time Limit Exceeded 강의에서 보니까 이중 반복문으로 풀면 시간 초과가 나와서 절대 그렇게 풀지 말라고 한다. 내가 그렇게 풀었다. p1부터 p2까지 배열의 구간 합으로 구해야 되는 줄 알았는데, 2중 반복문을 쓰면 안된다고 한다!! 구간합이 아니라 슬라이딩 윈도우로 풀어야 한다!!!..

https://www.inflearn.com/course/lecture?courseSlug=%EC%9E%90%EB%B0%94-%EC%95%8C%EA%B3%A0%EB%A6%AC%EC%A6%98-%EB%AC%B8%EC%A0%9C%ED%92%80%EC%9D%B4-%EC%BD%94%ED%85%8C%EB%8C%80%EB%B9%84&unitId=72733&tab=curriculum 학습 페이지 www.inflearn.com (위의 링크는 인프런 로그인 후, 해당 강의를 사지 않으면 접속이 되지 않습니다) 2. 공통원소 구하기 예시 입력 1 5 1 3 9 5 2 5 3 2 5 7 8 예시 출력 1 2 3 5 내가 푼 풀이(Time: 794ms Memory: 35M) 입력받은 배열 2개를 오름차순으로 정리 해준 뒤, ..