일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 이분탐색
- 브루트포스
- 백준
- 구현
- 로봇 청소기
- 최소 신장 트리
- 백트래킹
- Spring
- 2018 KAKAO BLIND RECRUITMENT
- 2019 KAKAO BLIND RECRUITMENT
- 투 포인터
- 조합
- 2020 카카오 인턴십
- 다익스트라
- 2020 KAKAO BLIND RECRUITMENT
- 투포인터
- 파이썬
- GIT
- BFS
- 우선순위큐
- 2021 KAKAO BLIND RECRUITMENT
- 프로그래머스
- 비트마스킹
- 크루스칼
- SWEA
- 스택
- 시뮬레이션
- 플로이드와샬
- 플로이드 와샬
- 트라이
- Today
- Total
목sssssss록파이썬 (109)
개발조아
문제 링크 : https://www.acmicpc.net/problem/2917 2917번: 늑대 사냥꾼 첫째 줄에 N과 M (1 ≤ N, M ≤ 500)이 주어진다. 둘째 줄부터 N개 줄에는 숲의 지도가 주어진다. 지도에 'V'와 'J'는 딱 하나만 있고, 적어도 하나의 '+'가 있다. www.acmicpc.net 문제를 잘 이해를 못해서 좀 고민했다. 가장 안전한 길이란 모든 칸에서 나무와 거리의 최솟값이 가장 큰 경로이다. 이 부분에서 최솟값이 가장 큰 경로라길래 최솟값이 가장 크면 가장 작은 값인가 큰값인가 헷갈렸었다. 아주 멍청이 같은 생각이었다. 모든 점에서 나무까지의 거리 중 최소값을 찾아서 저장하고 이동 중에 이 거리가 큰값을 선택해서 가면 된다. 모든 점에서 나무까지의 거리는 BFS로 돌..
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/84021 코딩테스트 연습 - 3주차 [[1,1,0,0,1,0],[0,0,1,0,1,0],[0,1,1,0,0,1],[1,1,0,1,1,1],[1,0,0,0,1,0],[0,1,1,1,0,0]] [[1,0,0,1,1,0],[1,0,1,0,1,0],[0,1,1,0,1,1],[0,0,1,0,0,0],[1,1,0,1,1,0],[0,1,0,0,0,0]] 14 [[0,0,0],[1,1,0],[1,1,1]] [[1,1,1],[1,0,0],[0,0,0]] 0 programmers.co.kr 질문하기에 너무 공감됐던 글이다. 1,2주차는 쉬웟는데 갑자기 너무 어려워졌던 문제였다. 올해 LG CNS 8월 입사자 4번 문..
문제 링크 : https://www.acmicpc.net/problem/6593 6593번: 상범 빌딩 당신은 상범 빌딩에 갇히고 말았다. 여기서 탈출하는 가장 빠른 길은 무엇일까? 상범 빌딩은 각 변의 길이가 1인 정육면체(단위 정육면체)로 이루어져있다. 각 정육면체는 금으로 이루어져 있어 www.acmicpc.net 평범한 3차원 공간에서의 BFS이다. S에서 출발하여 E까지 가는데 걸리는 최단시간을 구하는 것이다. from sys import stdin from collections import deque input = stdin.readline dx = [-1,1,0,0,0,0] dy = [0,0,-1,1,0,0] dz = [0,0,0,0,-1,1] def solv(): while True: gl..
문제 링크 : https://www.acmicpc.net/problem/18808 18808번: 스티커 붙이기 혜윤이는 최근에 다양한 대회를 참여하면서 노트북에 붙일 수 있는 스티커들을 많이 받았다. 스티커는 아래와 같이 사각 모눈종이 위에 인쇄되어 있으며, 스티커의 각 칸은 상하좌우로 모두 연 www.acmicpc.net 주어진 스티커를 순서대로 붙이는데 회전이 가능하다. 이때 스티커가 겹치거나 범위를 벗어나면 안되야하고 회전했는데도 못붙이는 경우에는 해당 스티커는 버린다. 스티커 회전의 경우 Maaaaaaaaaze 풀면서 썼던 방식과 비슷한데 다른 점이 하나 있다. Maaaaaaaaaze의 경우 회전해도 배열의 크기가 같지만 이번 문제는 회전하면 가로, 세로 길이가 서로 바뀐다. 그래서 바뀐 길이만큼..
문제 링크 : https://www.acmicpc.net/problem/16985 16985번: Maaaaaaaaaze 첫째 줄부터 25줄에 걸쳐 판이 주어진다. 각 판은 5줄에 걸쳐 주어지며 각 줄에는 5개의 숫자가 빈칸을 사이에 두고 주어진다. 0은 참가자가 들어갈 수 없는 칸, 1은 참가자가 들어갈 수 있는 칸을 www.acmicpc.net 이동 조건을 잘못이해해서 헤맸던 문제이다. 입구에서 이동할 때 바깥 면에 있는 칸으로만 이동이 된다고 이해해서 예제 입력 3번부터 답이 이상했다. 근데 알고보니 그냥 3차원 BFS 바깥면 상관없이다 모든 칸으로 이동이 가능한거였다. 문제는 순열+배열회전+BFS인데 크게 어려운건 없다고 생각했다. 주어진 판의 순서를 섞고 각 판을 회전하여 조합을 만든 후 BFS로..
문제 링크 : https://www.acmicpc.net/problem/2116 2116번: 주사위 쌓기 첫줄에는 주사위의 개수가 입력된다. 그 다음 줄부터는 한 줄에 하나씩 주사위의 종류가 1번 주사위부터 주사위 번호 순서대로 입력된다. 주사위의 종류는 각 면에 적혀진 숫자가 그림1에 있는 www.acmicpc.net 주사위를 수직으로 쌓을때 서로 맞닿은 부분의 눈이 같아야하고 전부다 쌓았을 때 양옆 주사위 눈의 합의 최대값을 구하는 문제이다. 주사위 눈은 1-6, 2-4, 3-5가 서로 위아래로 짝지어져있기 때문에 반대편은 자동적으로 따라온다. 나는 주사위 눈을 짝지어서 배열에 저장했다. 전체 주사위를 돌면서 저장한 주사위 눈의 짝에서 값을 찾고 반대쪽을 다음 대상으로 바꿔가면서 반복문을 진행했다. ..
문제 링크 : https://www.acmicpc.net/problem/9934 9934번: 완전 이진 트리 상근이는 슬로베니아의 도시 Donji Andrijevci를 여행하고 있다. 이 도시의 도로는 깊이가 K인 완전 이진 트리를 이루고 있다. 깊이가 K인 완전 이진 트리는 총 2K-1개의 노드로 이루어져 있다. (아래 www.acmicpc.net 이진트리의 중위순회을 이용하여 풀었다. 중위 탐색은 왼쪽 자식노드 먼저 탐색하고 자신 노드 보고 오른쪽 자식 노드를 보는 순회 방식이다. 전위,중위,후위 순회 방식을 문제의 그림을 보고 설명하면 아래와 같다. 더보기 사진 링크 : https://www.acmicpc.net/problem/9934 전위 순회는 자신 노드를 먼저 확인하고 왼쪽 자식 노드를 탐색하..