[SW Expert Academy] 4335. 무인도 탈출
4335. [연습문제] 무인도 탈출 SW Expert Academy의 문제들은 저작권 때문에 무단 복제가 금지되어있기 때문에 링크로 대체하겠습니다.클릭시 이동합니다! 어떻게 풀까? 우선 직육면체의 특징에 대해서 살펴봅시다! 직육면체는 말 그대로 6개의 면을 가지고 있습니다.하지만, 생각해보면 그 특징은 가로, 세로, 높이의 세 가지 길이로 이루어져있죠! 즉, {가로, 세로}, {세로, 높이}, {높이, 가로}의 세 가지 방향으로 놓을 수 있다는 것을 알 수 있습니다!! 또한, 블록의 특성상 메모이제이션을 쓰면 굉장히 적절할 것 같다는 생각을 해볼 수 있습니다.20개의 블록이니까 비트로 나타내서 비트를 이용한 메모이제이션을 사용하면 될 것입니다! 어떤 비트가 주어지면, 값이 0 으로 세팅되어있는 블록들을 ..
[SW Expert Academy] Code Battle!
매주 화요일에 열리는 코드 배틀!오늘도 참여했습니다.언제나처럼 2 문제를 풀었습니다. 핫핫 SW Expert Academy의 문제는 무단 복제가 금지되어 있기 때문에 링크로 대체합니다!클릭시 이동합니다!! No. 1 이진 문자열 복원 어떻게 풀까? 해당 문제는 00, 01, 10, 11의 개수가 주어졌을 때, 만들 수 있는 이진 문자열을 아무거나 출력하면 됩니다!두 문자 00, 01, 10, 11을 1번 문자, 2번 문자, 3번 문자, 4번 문자라고 하겠습니다! 문자열을 이어보면, 이진 문자열의 끝에 따라서 다음에 몇 번 문자가 오는지 알 수 있습니다. 그림에서 보듯이, 문자의 끝이 1이라면 뒤에 10 혹은 11이 와야합니다!문자의 끝이 0이라면, 00, 01 문자가 와야합니다. 또한, 1번, 2번, 3..