일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 트라이
- 2020 KAKAO BLIND RECRUITMENT
- 스택
- BFS
- 우선순위큐
- 비트마스킹
- 조합
- 크루스칼
- 투 포인터
- 2021 KAKAO BLIND RECRUITMENT
- 2020 카카오 인턴십
- 투포인터
- 이분탐색
- 플로이드 와샬
- 2018 KAKAO BLIND RECRUITMENT
- 백준
- 파이썬
- 다익스트라
- 로봇 청소기
- GIT
- 프로그래머스
- 2019 KAKAO BLIND RECRUITMENT
- 백트래킹
- Spring
- 최소 신장 트리
- SWEA
- 구현
- 시뮬레이션
- 브루트포스
- 플로이드와샬
- Today
- Total
목sssssss록전체 글 (151)
개발조아
문제 링크 : https://www.acmicpc.net/problem/20010 20010번: 악덕 영주 혜유 FT온라인 게임에서 치열한 경쟁을 통해 영주가 된 혜유는 퀘스트를 받았다. 퀘스트의 내용은 자신이 관리하고 있는 마을 사이에 교역로를 건설하여 마을 간 교류를 활성화시키는 것이다. 이때, www.acmicpc.net MST와 DFS로 풀이 했다. 첫번째 답은 모든 마을을 연결하는 최소 비용을 출력해야하므로 MST 로 구한다. 두번째 답은 마을과 마을 사이의 최단 경로 중 비용이 가장큰 경로 이므로 BFS나 다익스트라로 구하면 된다. MST는 크루스칼로 구현했다. MST를 구성하면서 BFS에서 사용할 그래프를 인접리스트로 저장했다. 인접리스트 중 길이가 1인 점에서만 BFS를 수행했다. 끝에서 ..
Redis는 In-memory 데이터베이스로 key-value 구조로 자료를 저장하는 비정형 데이터베이스이다. In-memory 데이터베이스로 굉장히 속도가 빠르다 기본적인 개념자료 https://zangzangs.tistory.com/72 인메모리 데이터 저장소 Redis, 왜 사용할까? #Redis 파헤치기 인메모리 데이터 저장소 Redis 개발을 하다보면 트랜잭션이 많이 발생하는 화면에서 느껴지는 느림(?) 같은 것을 느끼곤 했다. 자주사용되는 하지만 세션에 담고 있기에는 뭔가 모호한 것들을 조 zangzangs.tistory.com 의존성 추가 나는 gradle를 사용하기에 dependencies를 설정했다. implementation 'org.springframework.boot:spring-b..
문제 링크 : https://www.acmicpc.net/problem/3108 3108번: 로고 로고는 주로 교육용에 쓰이는 프로그래밍 언어이다. 로고의 가장 큰 특징은 거북이 로봇인데, 사용자는 이 거북이 로봇을 움직이는 명령을 입력해 화면에 도형을 그릴 수 있다. 거북이는 위치와 www.acmicpc.net BFS로 풀이 했다. 문제를 정리하면 한붓 그리기를 위해선 붓을 맵에 놓아야하는데 이때 붓을 몇번 놓는지 구하면 된다. 내 풀이의 핵심은 도형의 크기를 두배 확장하는 것이다. 나는 BFS를 통해서 한붓그리기가 가능한지 판별한다. 근데 테두리가 겹치는 것만 한붓그리기가 가능하지만 BFS를 수행하면 동서남북으로 인접한 곳을 확인하게 된다. 그러면 사각형안에 사각형이 있는 경우고 가능하다고 판별하게 ..
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/42894 코딩테스트 연습 - 블록 게임 [[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,0,0,0,0],[0,0,0,0,0,0,4,0,0,0],[0,0,0,0,0,4,4,0,0,0],[0,0,0,0,3,0,4,0,0,0],[0,0,0,2,3,0,0,0,5,5],[1,2,2,2,3,3,0,0,0,5],[1,1,1,0,0,0,0,0,0,5]] 2 programmers.co.kr 빡구현 문제였다. 구현한 기능이 많다보니 100줄이 넘어갔다. 처음부터 봐보자. 일단 사용가능한 블록이 12가지가 있다. 하지만 게임..
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/17676 = (다음 지점 시작시각) 이라면 현재지점의 종료시각에 다음 지점의 응답은 동시에 처리되는 것이다. 즉 아래처럼 되어 있는 것이다. ㅣ-------------ㅣ ㅣ----------------ㅣ 또한 다음 지점의 시작시각이 현재지점 종료시각 보다 크더라도 그 차이가 1초가 안된다면 1초 동안 함께 처리될 수 있는 요청이다. ㅣ----------ㅣ (간격 0.5초)ㅣ----------ㅣ 따라서 한 로그의 종료시각을 기준으로 그 다음 모든 로그에 대해서 위의 경우를 세주면 된다. 종료시각부터 1초 구간으로 잡아서 이전 로그는 볼필요가 없다. 주의 할점으 위의 두 경우가 아니라고 해서 반복문을 ..
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/42890 코딩테스트 연습 - 후보키 [["100","ryan","music","2"],["200","apeach","math","2"],["300","tube","computer","3"],["400","con","computer","4"],["500","muzi","music","3"],["600","apeach","music","2"]] 2 programmers.co.kr 조합으로 풀이했다. 후보키의 길이는 1,2,3,4,..최대 8까지다. 그러므로 속성중에서 1개,2개,3개 뽑는 경우의 모든 조합을 다 구해도 충분하다. 우선 후보키가 될 컬럼들을 뽑아 조합을 순서 조합을 만들자. 다음 뽑은 조..
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/67260 코딩테스트 연습 - 동굴 탐험 9 [[0,1],[0,3],[0,7],[8,1],[3,6],[1,2],[4,7],[7,5]] [[8,5],[6,7],[4,1]] true 9 [[8,1],[0,1],[1,2],[0,7],[4,7],[0,3],[7,5],[3,6]] [[4,1],[5,2]] true 9 [[0,1],[0,3],[0,7],[8,1],[3,6],[1,2],[4,7],[7,5]] [[4,1],[8,7],[6,5]] false programmers.co.kr 백준에 비슷한 문제를 풀었던 적이 있어서 아이디어는 금방 떠올랐다. 백준 문제 링크 : https://www.acmicpc.net..
문제 링크 : https://www.acmicpc.net/problem/1553 1553번: 도미노 찾기 도미노의 크기는 1×2이고, 크기가 1×1인 칸으로 나누어져 있다. 칸은 수를 나타내며, 위와 같이 총 28가지가 있다. 크기가 8×7인 격자가 있고, 격자의 각 칸에는 정수가 하나씩 들어있다. 위의 도 www.acmicpc.net 도미노를 놓는 방향은 ㅡ ㅣ 두가지 모양밖에 없다. (0,0)부터 두 방향으로 묶어서 백트래킹으로 완탐해보자. 도미노를 (0,0)에서 (7,6)까지 순차적으로 확인하면 되므로 왼쪽이나 오른쪽을 향하도록 놓지 않아도 된다. 그래서 나는 처음에 오른쪽방향으로 도미노를 만들어 보고 다음 아래쪽 방향으로 도미노를 만들어 봤다. 이때 이미 사용한 도미노인지, 해당방향의 칸에 번호를..