Algorithm/programers
-
안전지대Algorithm/programers 2024. 8. 18. 21:58
문제 설명다음 그림과 같이 지뢰가 있는 지역과 지뢰에 인접한 위, 아래, 좌, 우 대각선 칸을 모두 위험지역으로 분류합니다.지뢰는 2차원 배열 board에 1로 표시되어 있고 board에는 지뢰가 매설 된 지역 1과, 지뢰가 없는 지역 0만 존재합니다.지뢰가 매설된 지역의 지도 board가 매개변수로 주어질 때, 안전한 지역의 칸 수를 return하도록 solution 함수를 완성해주세요.제한사항board는 n * n 배열입니다.1 ≤ n ≤ 100지뢰는 1로 표시되어 있습니다.board에는 지뢰가 있는 지역 1과 지뢰가 없는 지역 0만 존재합니다.입출력 예board result[[0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 0, 0, 0], [0, 0, 1, 0, 0], [0..
-
완전탐색_모음사전Algorithm/programers 2022. 10. 27. 14:47
생각보다 시간이 많이 걸렸던 문제,, 접근 방법 완전탐색을 사용해야 한다. 문제의 예시에서 사전에서 첫 번째 단어는 "A"이고, 그다음은 "AA", "AAA", "AAAA", "AAAAA", "AAAAE", ... 와 같습니다. 의 순서로 탐색이 진행되기 때문에 재귀의 방식을 활용해야 함을 알 수 있다. def solution(word): global answer global cnt moeum = ['A', 'E', 'I', 'O', 'U'] dfs('',moeum,word) return answer answer = 0 cnt = 0 flag = False def dfs(k,moeum,word): global answer global cnt global flag print(k) # 정답여부 변수 if f..
-
해쉬_전화번호 목록Algorithm/programers 2022. 10. 26. 23:16
접근 방식 1. 완전 탐색 문제를 읽고 가장 먼저 생각나는 것은 완전 탐색일 것이다. 리스트의 원소 1개를 기준으로 전체를 탐색하며 접두어가 되는지 확인하는 것이다. 이 방식을 사용한다면 1) 리스트 원소 마다 2) 전체를 탐색하며 접두어가 되는지 확인 하는 과정이 필요하고 2중 Loop 으로 구현이 가능하다. 하지만, 문제의 제약조건 [phone_book의 길이는 1 이상 1,000,000 이하입니다.] 을 확인하면 이 방식은 1,000,000 x 1,000,000 의 시간이 걸리는... 관계로 제외하였다. 2. sort/Loop 2중 Loop를 1중 Loop으로 변환 할 방법을 고안하다 생각해낸 것이 정렬이다. 문제를 잘 살펴보면 결국 접두어가 된 다는 것은 앞 숫자가 뒷 숫자의 가장 큰 자리 부터 ..
-
해쉬_완주하지 못한 선수Algorithm/programers 2022. 10. 26. 22:39
시도_1 def solution(participant, completion): answer = '' # 주의: 참가자 중에는 동명이인이 있을 수 있습니다. for p in completion: if p in participant: participant[participant.index(p)] = '0' for z in participant: if z != '0': answer = z break return answer 시도2 #풀이2_dic 이용 # get(i,x) => i 없으면 x return def solution(participant, completion): answer = '' d = {} # 참가자들을 삽입 for p in participant: if p not in d.keys(): d.upd..
-
[Lv.1] 성격 유형 검사하기Algorithm/programers 2022. 9. 24. 16:10
문제 나만의 카카오 성격 유형 검사지를 만들려고 합니다. 성격 유형 검사는 다음과 같은 4개 지표로 성격 유형을 구분합니다. 성격은 각 지표에서 두 유형 중 하나로 결정됩니다. 지표 번호성격 유형 1번 지표 라이언형(R), 튜브형(T) 2번 지표 콘형(C), 프로도형(F) 3번 지표 제이지형(J), 무지형(M) 4번 지표 어피치형(A), 네오형(N) 4개의 지표가 있으므로 성격 유형은 총 16(=2 x 2 x 2 x 2)가지가 나올 수 있습니다. 예를 들어, "RFMN"이나 "TCMA"와 같은 성격 유형이 있습니다. 검사지에는 총 n개의 질문이 있고, 각 질문에는 아래와 같은 7개의 선택지가 있습니다. 매우 비동의 비동의 약간 비동의 모르겠음 약간 동의 동의 매우 동의 각 질문은 1가지 지표로 성격 유형..