1. 문제 2. 접근문제 읽고 평소에 풀던 BFS 문제들이랑 비슷해서 별로 생각 안하고 풀다가 시간초과가 났다. 접근1. 모든 좌표를 다 돌면서 모래성(1~9)인 경우 주변(대각선, 상하좌우)을 체크한 후 무너지면 체크해주기, 그리고 체크 된 모래성들을 한 번에 0으로 표시하기 이렇게 풀었더니 시간초과가 났다. 로직에는 문제가 없는 줄 알고 모든 좌표가 아닌 -> 모래성 좌표만 큐에 저장해서 찾아가는 식으로 바꿔봤다. 하지만 이 방법도 시간초과가 났다. 시간 복잡도를 구해보니 모래성의 크기가 1000X 1000 = 10^6(백만)이고, 모래성의 개수가 평균 50%라고 했을 때 50만이고 BFS니깐 한 파도가 칠 때 평균 50만 * (8방향)이고 파도가 약 (Max(H, W) 이니깐 약 400,000만...
1. 문제 2. 접근부메랑을 만들기 위해서는 3 depth가 필요하고 부메랑을 만든 결과가 이어지면서 탐색을 진행해야한다.-> 백트랙킹 이용 어떤 데이터가 필요?-> 완성된 부메랑과 방문한 좌표를 저장할 boolean 배열, depth depth가 3이 되어서 부메랑이 만들어진 후엔?-> 새로운 부메랑을 만들어야 함. 하지만 다음 좌표의 기준이 모호함. 전체 좌표 중 방문 안한 모든 좌표?이러면 처음 함수를 호출할 때랑 달라지는 것이 없어짐 --> 시도 했지만 시간 초과 다른 방법 부메랑을 만들 때 DFS 방식으로 depth가 3이 될 때까지 계속 호출하는 것이 아닌, 부메랑이 만들어질 수 있는지 바로 체크하기-> 현재 좌표를 제외하면 딱 2좌표만 확인하면 되기 때문에 가능함. 그리고 이 방법은 부메..
1. ECR이란? amazon Elastic Container Registry(Amazon ECR) 컨테이너 이미지 레지스트리 서비스AWS의 IAM 기반으로 리소스 기반 권한이 있는 개인/ 퍼블릭 저장소 지원 private 저장소와 public 저장소가 존재하는데 권한 부여하는게 더 까다로워 질까봐 public 저장소를 택했다. public ECRAWS 계정마다 public registry가 제공됨 public resitry에 image respository를 만들고 이미지를 저장image respository에 이미지를 푸시하기 전에 AWS 사용자로 public registry에 인증해야함.푸시한 이미지를 개발 시스템에서 로컬로 사용하거나 Amazon ECS 작정 정의 및 Amazon EKS 사양에서 ..
기존 구조는 MAS 구조로 아래와 같았다. 백엔드 서버만 총 6개로 스프링 서버 4개, FastApi 서버 2개로 이루어졌다.하지만 이제 프리티어 계정만으로 축소해서 배포해야한다! 그래서 아래와 같이 게이트웨이 서버를 없애고 스프링 서버는 하나로 통합하고, FastApi 서버는 2개뿐이라서 하나의 EC2로도 충분히 돌아갈 것 같아서 냅두기로 했다. Docker로 EC2에 배포하기제일 먼저 FastApi 서버를 EC2에 배포하기로 했다. 코드는 변경할 것이 거의 없었다. 초반에 잘못 설정한 포트 번호만 8001 -> 8000으로 바꿔주고, 8000 -> 8001로 바꿔줬다. EC2에서 도커 이미지를 다운 받는 방법은 1. DockerHub에서 업로드 후 다운 받는 방법과 2. ECR(Elastic Con..
1. 문제 2. 접근다각형은 삼각형으로 구성되니깐 한 점을 고정 시킨 다음 두 점을 이동시켜서 삼각형의 넓이를 구해주면 되겠구나 했다.근데 계속해도 틀렸다고 나오길래 포기했다. 나는 처음 들어보는 신발끈 공식을 이용하는 풀이였다. 삼각형은 왜 안되나 봤더니 아래그림에서 점 P2, P3, P4으로 삼각형의 넓이 공식을 적용하면 제대로 된 넓이를 구할 수 없었다. 신발끈 공식은 시계 반대(정) 방향으로 돌면서 두 점을 정해 각 x, y를 곱해주어서 빼준다. 이때 마지막 점은 다시 첫 점으로 돌아와야 한다.코드로 구현하면 다음과 같다.for(int i=0; i 이때 중요한 점은 sum에다가 값을 더할 때 절대값으로 붙이면 안되는 것이다. 다 더한 다음에 결과에 절대값을 붙여야한다. 부호가 다른 것도 다 적..