백준 11053 - 가장 긴 증가하는 부분 수열
·
Algorithm
[접근방법] DP 문제인 것 같다! Bottom-up(반복문)👌 / Top-Down(재귀) 예시를 잘 생각해 내야 된다.. 문제가 짧다고 후딱 읽고 풀면! 틀린다. 그리하여 [생각해본 예시] 9 3 1 2 3 4 5 6 4 5 👉 ans : 6 [구현] 위 예시를 바탕으로 두려움에 떨며 이중 for문을 만들어 보았다. 단순히 이전 인덱스 값을 비교하면 원하는 값이 나오지 않을 것 같았다. ** DP를 모조리 1로 채워줬다. input으로 5, 5, 5, 5 이 들어가도 1을 반환해야 하기 때문에 1st for : i는 두 번째 원소부터 마지막까지 돌면서 2nd for : j를 i 이전 원소들로 지정해 자기자신(i)과 비교한다 ▶ 만약 j번째 원소(arr[j])가 i번째 원소(arr[i])보다 작다면 (증..
백준 1009 - 분산처리
·
Algorithm
[풀이] Math.pow(a,b)로 접근할 경우 숫자가 너무 커지게 되어 오류가 생긴다 그래서 두 가지 접근 방법을 떠올려보았다 1) a의 일의 자릿수만 가지고 b번 곱해보자! 👉 b번 곱해도 숫자가 커지지 않을까 :( 👉 나머지 연산자 2) 제곱수.. 규칙이 있을 것만 같다! 여기서 어째선지 2)번을 택했더란다. 1)도 구현해보긴 했다😅 일단 [0,9] 제곱수가 최대 4개의 반복 양상을 보여 배열로 생성해 주었다. -> int chart[10][4] 생성 이때, 각 행의 0, 1, 2, 3 번째는 b값이 4n, 4n+1, 4n+2, 4n+3일 때와 매핑되므로 순서를 유의해서 생성한다 ex: chart[3] = new int[]{1, 3, 9, 7}; a=12, b=10 인 경우 : newA = 2 (a..