라벨이 kakao 코딩인 게시물 표시

[취업] Kakao 코딩 테스트 문제[2]

이미지
2번째 문제를 한번 풀어보았습니다...! 점수판 계산 문제이며, 대게 파싱에 대한 문제인것 같습니다. 다음은 문제입니다. 2. 다트 게임 (난이도: 하) 카카오톡 게임별의 하반기 신규 서비스로 다트 게임을 출시하기로 했다. 다트 게임은 다트판에 다트를 세 차례 던져 그 점수의 합계로 실력을 겨루는 게임으로, 모두가 간단히 즐길 수 있다. 갓 입사한 무지는 코딩 실력을 인정받아 게임의 핵심 부분인 점수 계산 로직을 맡게 되었다. 다트 게임의 점수 계산 로직은 아래와 같다. 다트 게임은 총 3번의 기회로 구성된다. - 각 기회마다 얻을 수 있는 점수는 0점에서 10점까지이다. - 점수와 함께 Single(S), Double(D), Triple(T) 영역이 존재하고 각 영역 당첨 시 점수에서 1제곱, 2제곱, 3제곱 (점수^1 , 점수^2 , 점수^3 )으로 계산된다. - 옵션으로 스타상(*) , 아차상( # )이 존재하며 스타상( * ) 당첨 시 해당 점수와 바로 전에 얻은 점수를 각 2배로 만든다. 아차상(#) 당첨 시 해당 점수는 마이너스된다. - 스타상( * )은 첫 번째 기회에서도 나올 수 있다. 이 경우 첫 번째 스타상( * )의 점수만 2배가 된다. (예제 4번 참고) - 스타상( * )의 효과는 다른 스타상( * )의 효과와 중첩될 수 있다. 이 경우 중첩된 스타상(*) 점수는 4배가 된다. (예제 4번 참고) - 스타상( * )의 효과는 아차상( # )의 효과와 중첩될 수 있다. 이 경우 중첩된 아차상(#)의 점수는 -2배가 된다. (예제 5번 참고) - Single(S), Double(D), Triple(T)은 점수마다 하나씩 존재한다. - 스타상( * ), 아차상( # )은 점수마다 둘 중 하나만 존재할 수 있으며, 존재하지 않을 수도 있다. - 0 ~ 10의 정수와 문자 S, D, T, *, #로 구성된 문자열이 입력될 시 총점수를 반환하는 함수를 작성하라. 입력 형식 ...

[취업] Kakao 코딩 테스트 문제 [1]

이미지
카카오 코딩테스트를 풀어보자! 한번 풀어보는 것에 대해 많은 도움이 될 것 같아 포스팅 해보려합니다. 저는 단순 풀어보는데에 의의를 두고 있기에, 더 좋은 방법이 있다면 공유 부탁드려요 문제를 사이트에서 직접 풀어보지 않아. 처음부터 끝까지 구현하긴 했는데... Solution에 대한 함수만 짜면 된다는 얘기를 들은 거 같아, 혹시 아신다면 공유 부탁드릴게요 우선 문제에 대한 설명입니다. ( http://tech.kakao.com/2017/09/27/kakao-blind-recruitment-round-1/ ) 문제 1에 대해서 풀어보겠습니다...! 문제를 푼 환경은 Linux(Centos) C++로 풀었습니다. 1. 비밀 지도(난이도: 하) 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다. 1. 지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 “공백”(“ “) 또는 “벽”(“#”) 두 종류로 이루어져 있다. 2. 전체 지도는 두 장의 지도를 겹쳐서 얻을 수 있다. 각각 “지도 1”과 “지도 2”라고 하자. 지도 1 또는 지도 2 중 어느 하나라도 벽인 부분은 전체 지도에서도 벽이다. 지도 1과 지도 2에서 모두 공백인 부분은 전체 지도에서도 공백이다. 3. “지도 1”과 “지도 2”는 각각 정수 배열로 암호화되어 있다. 4. 암호화된 배열은 지도의 각 가로줄에서 벽 부분을 1, 공백 부분을 0으로 부호화했을 때 얻어지는 이진수에 해당하는 값의 배열이다. 입력 형식 = 입력으로 지도의 한 변 크기 n 과 2개의 정수 배열 arr1, arr2가 들어온다. - 1 ≦ n ≦ 16 -...

이 블로그의 인기 게시물

윤석열 계엄령 선포! 방산주 대폭발? 관련주 투자 전략 완벽 분석

대통령 퇴진운동 관련주: 방송·통신·촛불수혜주 완벽 분석

키움 OPEN API MFC 개발 (1)