전체 글 147

지희의 고장난 계산기

문제 :https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV4yC3pqCegDFAUx&categoryId=AV4yC3pqCegDFAUx&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 알고리즘 1. 재귀함수를 사용한다. 종료 조건은 주어진 값을 버튼으로 누를 수 있으면 숫자의 길이 + 1(=버튼) 종료된다. 가치치기는 min보다 커지면 return한다. 2. 누르지 못한다면 input값의 약수를 찾는다. 약수는 버튼으로 누를 수 있어야 한다. 약수를 찾았다면 몫과 약수의 길이 + 1(x버튼)..

메모이제이션 - 초콜릿과 건포도

서론 메모이제이션은 DP에서 많이 쓰이는 기법이다. 간단히 설명하면 문제를 계산하여 답을 저장하고, 이후에 겹치는 문제에 대해 계산을 하지 않고 저장된 답을 이용하는 것이다. 이는 영상처리 기법 중 하나인 LUT(Lookup Table)과 비슷하다. 이런 식으로 하면 빠른 실행 속도를 얻을 수 있지만 메모리 공간을 잃는다. 문제에 적용 문제:https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AW9j-qfacIEDFAUY&categoryId=AW9j-qfacIEDFAUY&categoryType=CODE&&& SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swe..

벽돌깨기

문제 :https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRQm6qfL0DFAUo&categoryId=AWXRQm6qfL0DFAUo&categoryType=CODE SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 알고리즘 1. 완전 탐색 하였고 1이 아닌 벽돌은 -1을 더해줬고, 1에서 구슬을 만나면 터지기 때문에 터질 경우 check함수를 통해 터진 벽돌을 -1로 표시한다. 2. -1로 표시된 벽돌을 0으로 바꿔주기 위해 큐를 이용했다. 아래 오른쪽부터 스캔하여 -1인 벽돌은 큐에 넣어주고 다시 스캔한다. 3. 스캔하..

오 나의 여신님

문제 :https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWsBQpPqMNMDFARG&categoryId=AWsBQpPqMNMDFARG&categoryType=CODE&&& SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 알고리즘 1. time step 마다 악마를 증식시키고 주인공이 움직인다. 2. 악마 큐와 주인공 큐를 따로 만들어서 BFS를 사용하여 조건에 따라 증식 & 이동한다. 3. time step 마다 움직여야 하기 때문에 큐에 cnt를 만들어 time변수와 cnt를 비교하여 다르면 while문을 빠져나오게 했..

객체 비교 후 정렬 - 냉장고

서론 일반적으로 정렬을 할 때 sort함수를 이용하여 정렬을 한다. 그러나 객체에 대해서 sort를 하려면 일반적인 sort함수로는 불가능하다. 객체를 sort 하려면 객체의 속성 중 하나를 기준으로 잡고 sort를 해야한다. 객체를 sort 하기 위해서는 compare함수의 Override이 필요하다. 구현 코드 import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.Arrays; import java.util.Collections; import java.util.Comparator; import java.util.StringTokenizer; class Poin..

벌꿀채집

문제 : https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5V4A46AdIDFAWu&categoryId=AV5V4A46AdIDFAWu&categoryType=CODE&&& SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 알고리즘 1. DFS를 통해 벌통에서 벌꿀을 채취 할 수 있는 가장 큰 경우를 배열에 저장한다. 2. 배열에 저장된 값을 통해 두 명의 일꾼이 선택 할 수 있는 가장 큰 조합을 찾는다. 주의사항 1. 채취 할 벌통을 선택하는 과정에서 선택한 경우와 선택하지 않는 경우를 나눠줘야한다. 예를 들어 채취 할 ..

무선 충전

문제 : https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRDL1aeugDFAUo&categoryId=AWXRDL1aeugDFAUo&categoryType=CODE&&& SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 시뮬레이션 문제이기 때문에 꼼꼼하게 문제를 읽고 주의 해야 할 점을 정리하는 것이 좋다. 문제이해 시뮬레이션 문제는 이해하기 쉬운 편이다. 특히 SWEA에서 제공하는 모의 SW 역량 테스트는 더더욱 그렇다. 상하좌우로 이동한다. BC범위 내에 있으면 sum에 더해준다. 2명이상의 사용자가 같은 BC를 사..

728x90