카테고리: Algorithm

삼성 SW 역량테스트 백준 연구소 14502

1. 문제 링크 삼성 SW 역량테스트 기출 백준 연구소 14502 2. 문제 조건 연구소는 크기가 N×M입니다. 연구소에서 빈곳 0, 벽 1, 바이러스 2의 값이 주어지게 됩니다. 벽을 3개만 세운 뒤 바이러스가 퍼질 수 없는 안전영역의 최댓값을 구하는 문제입니다. 지도의 세로 크기 N과 가로 크기 M (3 ≤ N, M ≤ 8) 3. 컴퓨팅 사고

삼성 SW 역량테스트 백준 테트로미노 14500

1. 삼성 SW 역량테스트 백준 감시 14500 1.1. 컴퓨팅적 사고 테트로미노의 모든 경우의 수를 구해기 위해서는 ? (1)고려해야할 사항: 좌우 반전, 90도 회전, 반전된 것들중에 또 다시 뒤집기, 90도 회전된 것들중에 다시 뒤집기 (2) 어떻게 이것들을 최댓값을 처리할지가 가장 중요한 문제입니다. 테트로미노로 만들수 있는 경우의수는 총 1

삼성 SW 역량테스트 백준 감시 15683

1. 문제 링크 삼성 SW 역량테스트 백준 감시 15683 2. 컴퓨팅 사고 문제를 살펴보기전에 알아보아야할 것은 내가 구현하는 것들이 올바른 시간내에 들어오는지를 확인해야 합니다. 최악의 경우 카메라는 총 8대이기때문에 4^8 = 65536경우가 나오게 된다. 사무실의 최대 크기 8 * 8에서 감시못하는 공간을 카운트하면 65536 * 64 = 약

프로그래머스 가장 큰 정사각형 찾기

1. 프로그래머스 가장 큰 정사각형 찾기 1.1. 컴퓨팅적 사고 보드에서 0인 경우를 제외한다. 0인 경우에는 어떠한 정사각형도 만들 수가 없기때문이다. 따라서, 대각선(i-1,j-1), 위(i-1,j), 왼쪽(i,j-1)의 위치의 값중 최솟값 +1의 값을 주게해주는데 왜 이러한 값을 구해주는 것일까 잘 생각해보도록 합니다. 가장 최소가되는 값의 +1

프로그래머스 쿼드 압축후 개수 세기

1. 쿼드압축 후 개수 세기 1.1. 컴퓨팅적 사고 가장왼쪽위의 좌표를 기준으로 현재 탐색하고자 하는 정사각형의 한변의 길이를 통해서 탐색합니다. 가장 왼쪽지점을 기준으로 처리합니다. 분할 후도 같게 생각합니다. 3가지 경우의수: 특정 범위가 모두 '0’인 경우, 특정 범위가 모두 ‘1’ 인경우, 그게 아닌경우를 찾아냅니다. 이것들을 DFS로 처리하여

릿코드 Partition Labels

1. partition labels 1.1. 컴퓨팅적 사고 (1)LastIdx[알파벳을 아스키코드로 표현된 값] = 현재 위치의 값을 구해줍니다. 예) ‘c’ 일 경우 LastIdx[‘c’-‘a’=2] = 현재 위치(i) (2) S문자열을 모두 수행하면서 나오는 알파벳들의 위치와 비교하여 최대로 위치해있는 인덱스값을 구해줍니다. (3) 만약 S문자열값을

프로그래머스 외벽점검

1. 프로그래머스 외벽점검 1.1. 컴퓨팅적 사고 (1) 취약점의 출발지를 설정하고 취약지점을 평면으로 생각하여 해당 N범위를 넘어갈 것을 대비하여 취약지점+N까지 값들을 넣어줍니다. (2) 출발점과 다음 취약점의 거리가 사용 가능한 친구의 시간보다 크면 더이상 진행할 수 없는것이므로 다음값으로 갱신하여 진행 즉, 현재 친구의 시간으로 모든 외벽을 점검

프로그래머스 야근지수

1. 프로그래머스 야근 지수 Level03 1.1. 컴퓨팅적 사고 priorityQueue를 사용하여 가장 야근이 많은것부터 하나씩 처리합니다.1시간당 1의 일을 소모하니 가장높은것부터 -1을 처리해줍니다. TestCase03의 경우 처리한값중에 -1 0보다 작은 값이 존재할 경우 가장 최솟값이 0이되기 때문에 조건을 걸어 해당 로직을 빠져나오게 하였

Codility FrogRiverOne

1. Codility FrogRiverOne 1.1. 컴퓨팅적 사고 해당 문제는 개구리가 강 반대편으로 점프할 수 있는 가장 빠른 시간을 찾아야 합니다. 즉, 1-X까지의 값이 모두 주여졌을때의 현재 인덱스값을 반환하면 되는 문제였습니다. set을 사용하여 모든 개구리가 점프하는 시간들을 담아줍니다. 시간들이1-X까지의 값 즉, set.size()값이

Codility PermMissingElem

1. codility PermMissingElem 1.1. 컴퓨팅적 사고 check변수를 선언하여 나온 elements를 모두 체크를 시켜줍니다. 값은 1부터 range까지 진행되므로 1부터 진행하여 check값까지 진행하면서 false인값일때 해당 엘리먼트의 값을 반환시켜줍니다. 1.2. 소스코드 123456789101112131415161718