알고리즘/SW Expert Academy5 [SW Expert Academy / JAVA] 1208.1일차 - Flatten 이번에 풀어볼 문제는 1208번 1일차 - Flatten이다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 우선 문제부터 보자. 문제 설명 한 쪽 벽면에 다음과 같이 노란색 상자들이 쌓여 있다. 높은 곳의 상자를 낮은 곳에 옮기는 방식으로 최고점과 최저점의 간격을 줄이는 작업을 평탄화라고 한다. 평탄화를 모두 수행하고 나면, 가장 높은 곳과 가장 낮은 곳의 차이가 최대 1 이내가 된다. 평탄화 작업을 위해서 상자를 옮기는 작업 횟수에 제한이 걸려있을 때, 제한된 횟수만큼 옮기는 작업을 한 후 최고점과 최저점의 차이를 반환하는 프로그램을 작성하시오. 가장 높은 곳에 있는 상자를 가장 낮은 곳으로 옮기는 작업을.. 2021. 12. 26. [SW Expert Academy / JAVA] 2805.농작물 수확하기 이번에 풀어볼 문제는 2805번 농작물 수확하기이다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 이게 접근하는 방법은 쉬웠는데 코드 짜는데 생각보다 머리가 아파서 힘들었던 문제였다. 아, 힘들진 않았고 짜증 나는 문제. 어쨌든 문제부터 보자. 문제 설명 N X N크기의 농장이 있다. 이 농장에는 이상한 규칙이 있다. 규칙은 다음과 같다. ① 농장은 크기는 항상 홀수이다. (1 X 1, 3 X 3 … 49 X 49) ② 수확은 항상 농장의 크기에 딱 맞는 정사각형 마름모 형태로만 가능하다. 1 X 1 크기의 농장에서 자라는 농작물을 수확하여 얻을 수 있는 수익은 3이다. 3 X 3 크기의 농장에서 자라는 농.. 2021. 12. 25. [SW Expert Academy / JAVA] 2001.파리 퇴치 이번에 풀 문제는 2001번 파리 퇴치이다. 먼저 문제를 보자. 문제 N x N 배열 안의 숫자는 해당 영역에 존재하는 파리의 개수를 의미한다. 아래는 N=5의 예이다. M x M 크기의 파리채를 한 번 내리쳐 최대한 많은 파리를 죽이고자 한다. 죽은 파리의 개수를 구하라! 예를 들어 M=2 일 경우 위 예제의 정답은 49마리가 된다. 이야, 벌써 머리가 아파온다. 일단 N X N 배열이라니 2차원 배열을 써야 하는 것 같다. 다음 조건을 봐 보자. 제약 사항 1. N 은 5 이상 15 이하이다. 2. M은 2 이상 N 이하이다. 3. 각 영역의 파리 개수는 30 이하이다. 그다음은 입출력이다. 입력 10 5 2 1 3 3 6 7 8 13 9 12 8 4 16 11 12 6 2 4 1 23 2 9 13 .. 2021. 12. 24. [SW Expert Academy 풀이/JAVA] 1289.원재의 메모리 복구하기 이번에 풀 문제는 1289번이다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 문제부터 보도록 하자. 문제 원재가 컴퓨터를 만지다가 실수를 저지르고 말았다. 메모리가 초기화된 것이다. 다행히 원래 메모리가 무슨 값이었는지 알고 있었던 원재는 바로 원래 값으로 되돌리려고 했으나 메모리 값을 바꿀 때 또 문제가 생겼다. 메모리 bit 중 하나를 골라 0인지 1인지 결정하면 해당 값이 메모리의 끝까지 덮어 씌우는 것이다. 예를 들어 지금 메모리 값이 0100이고, 3번째 bit를 골라 1로 설정하면 0111이 된다. 원래 상태가 주어질 때 초기화 상태 (모든 bit가 0)에서 원래 상태로 돌아가는데 최소 몇 번이.. 2021. 12. 23. [SW Expert Academy 풀이/ JAVA] 1859.백만장자 프로젝트 이번에 새로 알고리즘 문제를 푸는 사이트를 찾았다. 여기도 생각보다 많은 문제가 있어서 많이 사용할 것 같다. 이번 문제는 여기에 들어가서 볼 수 있다. SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 이제 문제풀이로 들어가서 문제를 알려주겠다. 문제 25년 간의 수행 끝에 원재는 미래를 보는 능력을 갖게 되었다. 이 능력으로 원재는 사재기를 하려고 한다. 다만 당국의 감시가 심해 한 번에 많은 양을 사재기할 수 없다. 다음과 같은 조건 하에서 사재기를 하여 최대한의 이득을 얻도록 도와주자. 1. 원재는 연속된 N일 동안의 물건의 매매가를 예측하여 알고 있다. 2. 당국의 감시망에 걸리지 않기 위해 하루에 최대.. 2021. 12. 22. 이전 1 다음