일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 삼성청년sw아카데미
- 웹 표준 사이트 만들기
- SWEA
- ssafy 7기 합격
- React
- 백준7576 bfs
- SSAFYcial
- 백준
- 알고리즘
- 코딩 교육
- 프로그래머스
- 삼성 청년 SW 아카데미
- bfs
- ssafy 7기 교수님
- SSAFY
- SSAFY 입학식
- 유니온 파인드
- DP
- 프로그래머스 고득점 kit
- 이코테
- git
- ssafy 7기
- SSAFY 8기
- DenseNet
- Learning
- pytorch
- 싸피 7기 입학식
- 전이학습
- 코딩교육
- dfs
- Today
- Total
목록알고리즘 (6)
개미의 개열시미 프로그래밍
[자바 풀이] import java.util.*; import java.io.*; class Solution { static int[][] graph = {{1,2,3}, {4,5,6}, {7,8,9}, {-1, 0, -2}}; static int[][] visited; static Queue q; static int[] dy = {-1, 1, 0, 0}; static int[] dx = {0, 0, -1, 1}; public String solution(int[] numbers, String hand) { StringBuilder sb = new StringBuilder(numbers.length); List result = new ArrayList(); int curL = -1; int curR = ..
어제 점심에 풀었던 문제였지만 졸업 프로젝트 포스터를 만들고 다른 과목 발표자료도 만드느라 이제야 글을 올린다.. https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net 풀이코드 from collections import deque from sys import stdin m, n = map(int, stdin.readline().split()) # m가로, n세로 graph = [] for _ in range(n): graph.appe..
오늘은 백준 단계별 풀기 dfs, bfs 파트 5번째 문제입니다. 이코 테에서 풀었던 미로 탈출 문제와 거의 유사해서 금방 풀 수 있을 거라 생각했지만 사소한 부분에서 실수를 해서 시간이 조금 걸렸습니다. 하지만 복습한다고 생각하고 다시 짚고 넘어갈 수 있어서 좋았습니다. 복습이 필요하다고 생각했는데 이렇게 같은 유형을 반복적으로 푸는것도 복습이 된다고 생각합니다. https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net 풀이코드 # bfs, deque from collections ..
오늘은 백준의 단계별 풀어보기에서 DFS와 BFS단계 단지 번호 붙이기 문제를 풀어보았습니다. https://www.acmicpc.net/problem/2667 2667번: 단지번호붙이기 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여 www.acmicpc.net 풀이 코드 n = int(input()) # 지도의 크기 graph = [] for _ in range(n): graph.append(list(map(int, input()))) cnt = 0 # 단지내 집의 수 카운트 cnt_list = [] # 하나의 단지내 집의 수를 담을 리스트 #dfs, 스택, 재..
오늘도 백준의 단계별 풀기에서 DFS, BFS에 관한 문제를 풀어보았습니다. https://www.acmicpc.net/problem/2606 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어 www.acmicpc.net from collections import deque from sys import stdin n = int(input()) # 컴퓨터의 수 m = int(input()) # 연결된 수 graph = [[0] * (n+1) for _ in range(n+1)] # 인접행렬 생성 for _ in range(m): x, y = ma..
이제 코딩 테스트를 본격적으로 공부하려 한다. 원래 학기가 끝나고 준비하려 했지만 왠지 모를 불안감에 시작했다.. 친구가 알려준 순서와 나동빈의 이코 테를 참고해서 같이 공부하려 한다. 친구가 알려준 알고리즘 공부 순서는 '백 트랙킹, DFS, BFS, 브루트 포스, 유니온 파인드 기타 자료구조(큐, 스택, 리스트)'이고 이코테에서는 백트래킹 부분이 없어서 따로 유튜브 강의를 보고 백준을 풀 생각이다. 먼저, 오늘은 BFS와 DFS를 공부했고 표로 간단히 정리하면 아래와 같다. DFS BFS 동작원리 스택 큐(dequeue) 구현방법 재귀 함수 이용 큐 자료구조 이용 주의할 점은 BFS문제를 풀때 dequeue를 활용한다는 점이다. 문제 1) 음료수 얼려먹기 # 입력받기 n, m = map(int, in..