목록STUDY/Coding (18)
Information Security
https://ryuls.tistory.com/10 [Java] 백준 #2178 미로 탐색 (Scanner 사용) #2178 미로 탐색 문제 N×M크기의 배열로 표현되는 미로가 있다. 1 0 1 1 1 1 1 0 1 0 1 0 1 0 1 0 1 1 1 1 1 0 1 1 미로에서 1은 이동할 수 있는 칸을 나타내고, 0은 이동할 수 없는 칸을 나타낸다. 이러한 미로가 ryuls.tistory.com import java.util.*; public class Main { static int N, M; static int[][] map; static boolean[][] visited; // 방문 체크 배열 static int cnt = 1; // 출발 지점 (1, 1)은 항상 1로 주어짐 static int..
https://velog.io/@ajufresh/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EB%AC%B8%EC%A0%9C%ED%92%80%EC%9D%B4-Java [프로그래머스] 네트워크 문제풀이 (Java) [프로그래머스] 네트워크 문제풀이 (Java) velog.io 재귀함수를 통한 DFS 참고한 풀이 class Solution { public int solution(int n, int[][] computers) { int answer = 0; boolean[] visited = new boolean[n]; for(int i=0; i
https://velog.io/@minji0801/%EC%98%A4%EB%8B%B5%EB%85%B8%ED%8A%B8%ED%8C%8C%EC%9D%B4%EC%8D%AC-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%EA%B2%8C%EC%9E%84-%EB%A7%B5-%EC%B5%9C%EB%8B%A8%EA%B1%B0%EB%A6%AC [오답노트 | 파이썬] 프로그래머스 - 게임 맵 최단거리 프로그래머스 Lv.2 게임 맵 최단거리 오답노트 velog.io https://blackvill.tistory.com/177 [프로그래머스] 게임 맵 최단거리 (JAVA) 문제 출처 - Programmers 문제는 여기 코딩테스트 연습 - 게임 맵 최단거리 [[1,0,1,1..
https://programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 문제 설명 n개의 음이 아닌 정수가 있습니다. 이 수를 적절히 더하거나 빼서 타겟 넘버를 만들려고 합니다. 예를 들어 [1, 1, 1, 1, 1]로 숫자 3을 만들려면 다음 다섯 방법을 쓸 수 있습니다. -1+1+1+1+1 = 3 +1-1+1+1+1 = 3 +1+1-1+1+1 = 3 +1+1+1-1+1 = 3 +1+1+1+1-1 = 3 사용할 수 있는 숫자가 담긴 배열 numbers, 타겟 넘버 targ..

이것이 코딩테스트다 380p 기본 아이디어 -> 가장 긴 증가하는 부분 수열(LIS) 가장 긴 증가하는 부분 수열이란? 하나의 수열이 주어졌을 때 값들이 증가하는 형태의 가장 긴 부분 수열을 찾는 문제 점화식 모든 0

이것이 코딩테스트다 - 369p 29번 문제 집의 개수 N 공유기의 개수 C 한 집에는 공유기 1개 설치할 수 있음 공유기와 공유기의 사이를 멀게 설치해야 함 (가능한 거리를 크게!) n, c = list(map(int, input().split(''))) #집의 개수 n, 공유기 개수 c 입력받기 array=[] #전체 집의 좌표 정보 입력받기 for _ in range(n): array.append(int(input())) array.sort() #이진 탐색을 위해 정렬 start=1 //최소 거리 end=array[-1] - array[0] #최대 거리 result=0 while(start =value + mid: value=array[i] count+=1 if count >= c: # c개 이상의..

이것이 코딩테스트다 360p 입력: 집의 수 N 집이 어디에 위치해 있는지 N만큼 숫자를 받아옴 생각한 방법 1) 집이 어디에 위치해 있는지 숫자를 다 더해서 집의 수 N으로 나눠준 다음 정수로 바꿔준다 2) 정수로 바꿔준 숫자와 집이 어디에 위치해 있는지 받아온 숫자를 비교해서 가장 적게 차이나는 집에 안테나를 설치해준다 문제점 숫다를 다 더해서 집의 수 N으로 나눠주게 되면 집이 아닌 숫자가 나올 수 있다 그 수를 다 비교하는 건 효율적으로도 좋지 않다 다시 생각한 방법 일단, 집이 위치해 있는 숫자의 리스트 안에서 생각해봐야 할 것 같다 중간 위치를 찾는 게 목적이니 5 1 7 9 를 sort 시켜주면 1 5 7 9 N은 4고 답은 5이니 N을 2로 나눠주고 몫의 리스트는 0부터 시작하니까 1을 빼..

이것이 코딩테스트다_344p 번호가 낮은 종류의 바이러스부터 증식! 자신의 상,하,좌,우로 빈칸이면 증식! 가까운 것부터 탐색하는 BFS 사용!! from collections import deque //큐 사용 n, k = map(int, input().split()) // NxN 크기의 시험관. 시험관 크기 받아오기 graph=[] // 시험관 보드 정보를 담는 리스트 data=[] // 바이러스에 대한 정보를 담는 리스트 for i in range(n): graph.append(list(map(int,input().split()))) //보드 정보를 한 줄 단위로 입력 for j in range(n): if graph[i][j] !=0: // 해당 위치에 바이러스가 있다면 data.append((g..