알고리즘
-
[ 2020 KAKAO BLIND RECRUITMENT ] 자물쇠와 열쇠Algorithm/프로그래머스 2020. 3. 12. 21:11
CatServant 문제 풀이 위의 그림과 같이 주위에 zero padding을 주고 Lock의 모든 좌표를 확인하면서 진행하면 된다. 그 과정을 key를 90도 씩 회전하면서 4번을 반복하는데 Lock과 Key가 딱 맞아 떨어지는 경우 Ture를 return 해준다. 그런데 이 때, 자물쇠 영역 내에서는 열쇠의 돌기 부분과 자물쇠의 홈 부분이 정확히 일치해야 하며 key의 돌기와 Lock의 돌기가 만나서는 안된다! 2가지 사항만 기억하면 크게 어려운 문제는 아니다. Code #include #include using namespace std; int lockBoard[60][60]; int rotakey[20][20]; int copyBoard[60][60]; void clearBoard(int loc..
-
[ 2020 KAKAO BLIND RECRUITMENT ] 괄호 변환Algorithm/프로그래머스 2020. 3. 11. 19:20
CatServant 문제 설명 문제를 잘못 이해해서 한참 헤맨 문제였다. 입력 조건은 아래와 같다. '(' 와 ')' 로만 이루어진 문자열이며 길이는 2 이상 1,000 이하인 짝수 문자열 p를 이루는 '(' 와 ')' 의 개수는 항상 같다. '균형 잡힌 문자열'을 아래와 같은 조건으로 통해 '올바른 괄호 문자열'로 변환할 수 있다. 이 조건을 제대로 안 읽어서 한참을 고민했다. 1. 입력이 빈 문자열인 경우, 빈 문자열을 반환합니다. 2. 문자열 w를 두 "균형잡힌 괄호 문자열" u, v로 분리합니다. 단, u는 "균형잡힌 괄호 문자열"로 더 이상 분리할 수 없어야 하며, v는 빈 문자열이 될 수 있습니다. 3. 문자열 u가 "올바른 괄호 문자열" 이라면 문자열 v에 대해 1단계부터 다시 수행합니다. ..