
네이버 블로그에서 velog로 옮긴 후 첫 포스팅 입니다.백준 자바 9466이곳에서 확인 가능합니다.우선 재귀함수 개념은 알고 있었으나, 강의를 듣고 제대로 풀려고 하니대충 느낌은 이해 됐는데 뭔가 고안하는게 헷갈렸다.우선 0 / 12 / 3이게 반복 되는 구조이고,

이 문제는 처음엔 약간 뭔소린가 싶었다.n번 반복하는데 확실하게 반복하는거도 아니고 뭐지.. 싶었는데마우스로 드래그하면서 블럭을 나누다보니 반복되는 부분이 눈에보였다.우선 이 문제는 크게 세 가지 구간으로 나뉜다고 해석했다.1\. 질문 + 대답으로 이루어져 n번 반복하

..백트래킹이라는 개념을 이번 강의를 통해 처음 접했는데,나랑 안맞는 것 같다 ㅎ..우선 이 문제는 이번 주의 강의였던 \[바킹독의 실전 알고리즘] 0x0C강 - 백트래킹에 있던 예제 중 하나였다.물론 강의는 c++로 되어있으나, 우리는 자바로 문제를 풀기에강의 내용을

이 문제는 원래 풀어야 되는 문제는 아니였지만, 15650 N과 M(2)가 있기에연습겸 풀었다.N-Queen 문제와 같이 강의에 있었기에 참고하면서 문제를 해결하였다.함수 checkN 는 m개의 변수를 받아 수열화 할 것이고, cur번째 값들을 수열을 저장하는 배열에순

우선 이 문제는 제목에서도 알 수 있다싶이 이전 문제와 흡사하다.다만 수열을 배열에 담을 때, 오름차순으로 점차 증가하게끔 넣어야 하기에 해당 제어문을 고려해주었다.전체적으로 checkN 함수는 이전과 흡사하지만, 이번엔 증가하는 값들을 체크하기 위해start라는 인자

다음은 마지막으로 별찍기 문제다.. 개인적으로 가장 머리가 아팠다.1/3 씩 반복해서 재귀문도 돌려야하고, 값을 찍어내기도 해야하는데, 중간중간 비워두기까지 해야한다..우선 starFunc함수는 x(헹),y(열),n 을 인자로 받는다. Z문제 는 1/2씩 반복했다면,이

이번주는 저번주에 비하면 좀 수월하게 해결한 것 같다..난이도도 실버라 많이 높진 않았고, 익숙한 개념인 정렬이라서 그랬던 것 같다.우선, 데이터를 비교할 n을 받고, 이후 n 번의 데이터를 다 받은 후정렬하면 되는 문제이다.우선 이 과정에서 우선순위 큐를 활용하고 싶

이 문제는 값을 받을 때마다 뒤집은 다음 해당 원소들을 오름차순으로 정렬하는 문제이다. 이번 문제도 이전 문제처럼 우선순위 큐를 이용하면 쉽게 정렬되겠다! 라고 생각했었다. 여기서 왜 sort를 사용하지 않았냐고 생각할 수도 있겠지만.. 실은 나도 잘 모르겠다 ㅋㅎ

이 문제도 정렬하는 문제이므로, 이전 문제들 처럼 우선순위 큐를 사용해야겠다고 생각했다. 다만, 그 과정에서 문자열의 길이<를 기준으로 1차 정렬하고, 만약 길이가 같으면 사전 순이며, 중복된 단어는 하나만 남기고 제거해야되므로 총 세 가지 조건을 고려해야되는 문

이 문제는 빈도라는 단어를 보자마자, 예전에 활용했던 getOrDeafult 함수가 떠올랐다. 따라서, 값들을 먼저 받아서 빈도를 계산한 후해당 값들을 sort와 compareTo를 활용해서 해결하는 방식으로 구상했다.먼저 값들을 받아 준 후, 빈도를 계산하기 위한 H

이 문제는 제일 처음 t 개의 테스트 케이스가 주어지고 그다음 집합 A , B의 크기가 주어진다. 그 다음 각각의 크기에 맞는 값들이 주어지고 해당 값들을 비교하여 B보다 A가 더 큰 경우의 수를 누적해서 출력한다. 이 과정을 t번 반복하는 문제이다. 보면 t에

이번 주제는 다이나믹프로그래밍, 즉 DP에 관한 내용이였다.이런 스타일의 문제들은 예전에 싸피를 살짝 준비하면서접한 경험이 있어, 재미있게 풀었던 것 같다.우선, 이번 문제는 정수 x가 3의 배수면 3으로 나누고,2의 배수면 2로 나누고 두 경우에 해당 되지않으면 1을

이번 문제는 점화식과 관련있었던 것 같다.dn = dn-1 + dn-2를 반복하면서 최종적으로d0은 0, d1 = 1 를 return한다.0과 1을 호출한 횟수를 각각 구하는 문제이다.미리 피보나치 메서드를 만들어 놓고,n의 최대값인 40까지의 경우의 수를 미리 다 구

이 문제는 제일 처음 삼각형의 층수인 n을 주고,각각의 노드에 따라 더해서 제일 큰 값을 구하는 문제이다.따라서, 입력 받은 값들을 배열에 깔끔하게 저장하기 위해n에 따른 경우의 수를 구하는 checknum 메서드를 먼저생성하여 값을 구하였고, 이후 calc 메서드를

이 문제는 어떤 자연수 N이 주어지고, 해당 수를 제곱수들의 합으로 나타내는 것이다.예를들면, N = 30이라했을때, 30 = 25(5 ^2) + 4(2^2) + 1 (1^2) 이므로, 개수는 3이다.따라서, N이 주어졌을 때, n보다 작은 가장 큰 제곱 수를 구하고

이 문제도 예전에 수학문제로 풀었던 적이 있었는데, 알고리즘으로 해결하려고 하니 좀 익숙하면서도 헷갈려서 당황스러웠다. 우선, 이 문제는 입력받은 두 개의 단어를 서로 비교하면서만들 수 있는 공통으로 겹치는 부분 수열의 최장거리를 구하는 것이다. 즉, 두 개의 단어를