1. 문제https://www.acmicpc.net/problem/2615 2. 접근 및 해결2-1) 접근현재 도달한 배열의 좌표(i,j)를 기준으로 세로줄, 가로줄, 대각선, 역대각선을 만들어서 오목을 확인했습니다. 세로줄(ㅣ), 가로줄(ㅡ), 역대각선(\)에 대해 index 확인을 그림으로 나타내면 아래와 같습니다. 1. 세로줄(ㅣ) list[i][j] -> list[i+1][j] -> list[i+2][j] ... 로 i값만 +1 변경됩니다. 2. 가로줄(ㅡ) list[i][j] -> list[i][j+1] -> list[i][j+2] ... 로 j값만 +1 변경됩니다. 4. 역대각선(\) list[i][j] -> list[i+1][j+1] -> list[i+2][j+2] ... 로 i, j값이 각..
1. 문제https://www.acmicpc.net/problem/5588처음엔은 백트래킹으로 모든 별의 좌표 중 m개를 추출한 후 비교했는데, 이러면 시간복잡도가 매우 커져서 시간초과가 발생합니다.2. 접근 및 해결2-1) 접근복잡한 연산보다, 해시의 특성을 잘 살리면 풀리는 문제입니다.여기서 쓰인 해시의 특성은 "동등한 객체는 동일한 해시 코드를 가져야 한다"입니다.equals()와 hashCode() 메서드는 객체 간의 동등성을 비교하고, 해시 기반의 자료구조에서 객체를 식별하는 데 사용됩니다.equals(): 두 객체가 동일한지를 비교합니다. 이 메서드를 사용하여 두 객체가 내용적으로 같은지를 확인할 수 있습니다. 즉, 객체의 내용이 같은 경우 true를 반환하고, 다른 경우 false를 반환합니..
1. 문제https://www.acmicpc.net/problem/1193 2. 접근 및 해결2-1) 접근문제를 해결하기 위해 총 4가지를 신경써야합니다.풀이 이해를 쉽게 하기 위해 Input을 8이라 가정, Output인 2/3을 찾아야하는 경우를 알아보겠습니다.아래의 노트를 띄워놓고 설명을 봐주세요! 1. 방문 순서방문 순서는 문제에서 1/1 → 1/2 → 2/1 → 3/1 → 2/2 → … 과 같은 지그재그 순서라고 나와있습니다.이를 쉽게 다시 생각해보면,1/1,1/2 -> 2/1,3/1 -> 2/2 -> 1/3 의 순서로 파란색 대각선 막대기처럼 계속 이동하는 것을 알 수 있습니다.그리고 우리가 찾아야하는 8번째 값은 이렇게 따라가다보면 2/3임을 알 수 있습니다. 2. 개수개수는 하나의 파란색 ..
안녕하세요! delay100입니다. 예전부터 이 주제로 포스팅을 하고 싶었어요! 왜냐하면,, CRUD만큼은 여러번 구현해보았고..머릿속에서 완벽히 정리할겸,개발자를 시작하는 분들은 여러번 따라해보는 것이 실력이 잘 는다고 생각하기 때문에,지식을 공유할겸 작성해봅니다. 그런고로 따라만 하면 만들어질 수 있도록 쉽게 만들어보려고 합니다! 그리고 따라만 하면 이해가 되지 않기 때문에, 최대한 상세히 설명(주석)도 적을 예정이니 겁먹지 마시고 같이 만들어봐요!! 자, 서론이 길었죠? 이제 시작해봅시다. 따라하면 만들어지는 메모장 + AWS 배포까지 1탄입니다.github(https://github.com/delay-100/memo)에 코드를 챕터별로 정리해두었습니다.chapter0. 최종 결과아래의 URL에서 ..
안녕하세요. delay100입니다.오늘은 Spring GET요청에 대해서 Postman에서 확인하는 방법을 적어보았습니다.1. SpringBoot 프로젝트 생성먼저, start.spring.io에서 아래와 같은 설정으로 프로젝트를 만들어줍니다.프로젝트 이름은 굳이 바꾸지 않아도 되지만, Add Dependencies를 눌러서 Lombok, Spring Web을 추가해주어야 합니다.https://start.spring.io/GENERATE를 하게 되면, 압축된 SpringBoot 폴더가 생성됩니다. 원하는 위치에 압축을 풀어줍니다.그 후 Intellij에서 해당 프로젝트를 열기해줍니다.프로젝트를 열다가 아래와 같은 경고문이 뜬다면, 네모박스에 체크를 해주고 Trust Project를 클릭해줍니다.Intel..
에러Description:Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.Reason: Failed to determine a suitable driver classstart.spring.io에서 dependencies에서 mariaDB를 추가한 후 아무런 설정 없이 springboot 프로젝트를 실행시키면 위와 같은 에러가 발생합니다. 해결 방안1줄 요약: SpringProject에 DB를 연결해줍니다.연결부분만 보고 싶으신 분들은 3번부터 봐주세요!1. DBeaver로 새 데이터베이스 연결하기(DBeaver에 MariaDB 연결)먼저 DBeaver..
안녕하세요. delay100입니다! 오늘은 IntelliJ에서 Github를 연결해볼건데요, Github에서 README.md를 추가한 경우에 대해 다뤄보려 합니다. 1. Github에서 README.md를 추가한 경우 2. local에는 이미 프로젝트가 존재하는 경우 1, 2가 모두 만족한 경우에는 어떻게 IntelliJ에서 연결해야 할지 알아봅시다. 먼저, 1, 2번 조건이 만족하기 위한 작업을 해주었습니다. GITHUB 먼저, Github에서 새로운 레포지토리를 생성해주었습니다. 특히 옵션 중에서 Add README file을 체크해주었습니다. 다 만들어주면 위와 같이 repository가 생성됩니다. README를 체크 안 해주었을 때랑 결과가 좀 다른데, README를 체크 해주지 않으면 로컬과..
1. 문제https://www.acmicpc.net/problem/15683 15683번: 감시스타트링크의 사무실은 1×1크기의 정사각형으로 나누어져 있는 N×M 크기의 직사각형으로 나타낼 수 있다. 사무실에는 총 K개의 CCTV가 설치되어져 있는데, CCTV는 5가지 종류가 있다. 각 CCTV가 감www.acmicpc.net2. 접근 및 해결2-1) 접근이 문제를 풀기 위해 한 cctv에서 고려해야 할 것은 종류, 위치, 방향으로 총 3가지 입니다.그런데 종류, 위치는 이미 문제에서 주어지기 때문에 우리는 방향만 정하면 됩니다.종류, 위치(x, y), 방향에 대한 정보 는 cctv 리스트로 관리할겁니다.위치는 x좌표, y좌표가 있으므로 총 4가지의 정보를 담아야 합니다.int[][] cctv = n..
안녕하세요! 99club의 만우절 이벤트에 참가했어요. 오늘의 TIL에 만우절 이벤트 공지 및 코드 풀이를 올렸듯이, 99club의 만우절 이벤트에 참가했습니다. 이벤트는 아주 간단한 문제를 가장 복잡하게 푼 사람에게 상품이 주어지는 이벤트입니다. ++ 2024-04-15 추가 길이상 1등상으로 수상했어요! 결과 Notion: https://bit.ly/3U53Mug 만우절 이벤트! (4/1) | Notion 기간: 24/4/1(월) 단 하루! teamsparta.notion.site 문제. https://school.programmers.co.kr/learn/courses/30/lessons/120831 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로..
1. 문제 https://www.acmicpc.net/problem/15650 15650번: N과 M (2) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 2. 접근 및 해결 2-1) 접근 1. 백트래킹으로 해결 2. 중복 없이 M개를 고른 수열 + 오름차순 -> 현재 나온 숫자가 다음에 나올 숫자보다 크면 출력하지 않음 2-2) 해결 if(cnt==M) { StringBuilder sb2 = new StringBuilder(); for(int i=0; ilist[i+1]) return; // 이 코드를 빼면 15649번 풀이와 같아짐 ..