728x90

코딩테스트 연습 37

sk ict family 챌린지 코딩테스트 후기

3시간동안 나온 문제는 총 4문제였다. 첫번째 문제는 그냥 쉬운 문제였다. dp로 푼 사람도 있다고 하는데 나는 가성비 따져서 풀었다. 무슨 문제라고 적을 순 없지만 솔직히 나는 dp풀이보다 내 풀이가 더 쉬운 풀이라고 생각한다. 물론 다이나믹 프로그래밍 풀이가 더 일반적(general)이긴 하겠지만. 두번째 문제는 cos pro 소용돌이 수 같은 문제. 물론 그것보단 어려움 ^^; 구현문제라 배열을 잘 쓸 수 있으면 문제 없이 풀 수 있다. 음. cospro 소용돌이 수를 예시로 들면, 소용돌이 수를 풀때 어떻게 탐색 방향을 바꿀지 모르겠다고 그 부분이 어렵다는 사람이 많다. 개인적으로는 탐색 방향을 바꿔가면서 푸는 cospro 소용돌이 수 같은 문제들은 다른 규칙을 찾아서 풀면 더 쉽다고 생각한다. ..

백준 14891 톱니바퀴 코드, 해설(파이썬)/ 삼성기출, 실버1 구현문제

코드만 궁금한 분은 깃허브 링크 눌러주세요 GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명 ㄱㄱ~~ 오랜만에 문제 푼거 올리려니까 내가 그동안 어떤 식으로 글 썼었는지 까먹음;; 4개의 톱니바퀴가 있고 톱니바퀴를 움직인다. 톱니바퀴는 1번부터 4번까지 있고, 주어진 입력에 따라 각각을 시계방향 또는 반시계방향으로 회전시킨다. 이 때 각 톱니바퀴의 끝에는 주어지는 입력에 따라 N극 S극이 정해져잇는데, 이 극성끼리의 관계에 따라 옆쪽 톱니에도 영향을 준다. 만약 다른 쪽 톱니바퀴와 마주치는 쪽이 서로 각각 N극과 S극 이면 영향..

Cos Pro 1급 기출문제 소욜돌이 수 풀이/코드, 파이썬(쉬운 풀이)

문제 링크는 따로 걸지 않겠다. 어차피 구름 로그인해서 풀어야하는 문제라서. 나는 코스프로는 사실 존재만 알고잇었다. 그런 코딩 자격증 같은게 있고, 평소에 코딩테스트 연습을 열심히 했다면 쉽게 풀 수 있을 거라는 말들을 많이 들어서 신경 안 쓰고 있었다. 그리고 프로그래머스에 있는 기출을 먼저 풀어보니까 유형에만 익숙해지면 쉽게 풀 수 있을 것 같다는 생각을 했고, (알고리즘 자체가 쉽다) 천천히 공부했다. 그런데 웬걸, 구름에 있는걸 풀어보니까 프로그래머스거 만큼 쉽지가 않았다 ^^;; 특히 이 소용돌이 수 라는 문제는 어떻게 풀지 알 것 같으면서도 정말 이렇게 복잡하게 풀어야한다고?하는 생각이 들어서 20분 가량 소요하면서.. 쉽게 푸는 방법을 알아냈다. 근데 이상한 방식으로 풀려고 하다보니까 머리..

행렬 테두리 확인하기 풀이/코드 (파이썬) 쉬운데 어렵게 푼 문제 LV2

코드만 궁금한 분은 깃허브 링크 눌러주세요! GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명 ㄱㄱ 코딩테스트 연습 - 행렬 테두리 회전하기 6 6 [[2,2,5,4],[3,3,6,6],[5,1,6,3]] [8, 10, 25] 3 3 [[1,1,2,2],[1,2,2,3],[2,1,3,2],[2,2,3,3]] [1, 1, 5, 3] programmers.co.kr 전체 행의 갯수, 열의 갯수가 주어진다. 이 때 해당 행렬은 맨 왼쪽 위부터 1, 2, 3 ,4 ,5 ,6 ..이런식으로 증가하는 행렬로 정의된다. 이후 이 안에 있는 ..

카카오 2021 순위 검색 파이썬 코드/풀이 (Lv 2 라기에는 너무 어려운 문제)

깃허브에서 코드만 볼 분은 링크 눌러주세요! GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명 ㄱㄱ 이 부분도 실제로 구현해보면 쉽지 않음.... for문이 네개나 들어가고 사이에 combinations도 써야하고. 그러면 이제 query부분에서는 단순히 들어온 단어들을 조합해서 붙여서 dict에 key로 써서 찾으면 된다. 그러면 이제 점수컷을 해야하는데, 아까 숫자들을 sort해서 저장해놨으니까 bisect_left를 써서 조건을 만족하는 인덱스를 찾고 전체 길이에서 그 인덱스만큼 빼면 조건을 만족하는 사람 수만 정확히 나오..

카카오 2021 메뉴 리뉴얼 파이썬 풀이, 코드 / 파이썬은 풀만한 문제

깃허브에서 코드만 볼 분은 링크 눌러주세요~ 문제 설명 ㄱㄱ (Lv 2) 코딩테스트 연습 - 메뉴 리뉴얼 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 programmers.co.kr orders에 여러 알파벳의 조합이 들어오는데, course에 써있는 크기만한 부분집합들을 만들어야 한다. 이 때 그 부분집합들은 orders에서 최소 2회씩 중복되어야 한다. 그리고 만약 2개 크기의 부분집합을 만들 때 여러 부분집합이 나온다면 그 중 가장 여러번 중복된 것들을 result에 알파벳순으로 리턴하면 된다. 문제 해설 1. course에 있는 숫자를 사용해 order에서 부분집..

2021 카카오 신규 아이디 추천 파이썬 풀이, 코드 / 쉬운 구현문제

깃허브에서 코드만 볼 분은 링크 GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 솔직히 쉬운 문제라 크게 설명 안 할거고, 하라는 대로 풀면 된다. 이 문제에서 중요한건 소문자인지 대문자인지 구분할 수 있는지 그리고 숫자인지 구분할 수 있는지 정도이다. string.lower()함수, string.isalpha()함수, string.isdigit()함수 이렇게 세개 정도만 알면 쉽게 풀 수 있을 것임..!! 나머지는 in이나 슬라이싱같은걸 잘 쓰면 풀수 있다.

카카오 2020 코딩테스트 괄호 변환 해설/코드 (파이썬), 간단한 재귀 구현 문제

전체 코드가 궁금한 분은 깃허브링크 눌러주세요!! 문제 설명 ㄱㄱ 코딩테스트 연습 - 괄호 변환 카카오에 신입 개발자로 입사한 "콘"은 선배 개발자로부터 개발역량 강화를 위해 다른 개발자가 작성한 소스 코드를 분석하여 문제점을 발견하고 수정하라는 업무 과제를 받았습니다. 소스를 programmers.co.kr Lv2짜리 문제라 40분 안에는 풀어야겠다고 생각하고 푼 문제인데 다행히 딱! 40분 맞춰서 풀었다. 문제 풀이 논리 .. 진짜 그냥 하라고 하는대로 하면 되서.. 그나마 신경 쓸 부분을 따져보면 1. 전체 프로그램 자체를 재귀로 짜야 한다. 3-1이나 4-5에서 반환을 하게 되는데 1단계부터 재귀적으로 수행한 결과를 활용하라고 계속 문제설명에 나오기 때문에, 나는 처음에 while로 풀고 일부 부..

카카오 2020기출, 블록 이동하기 파이썬 코드/해설, 까다로운 구현 문제 LV3, 리스트 집합 속도 차이

문제 설명ㄱㄱ 코딩테스트 연습 - 블록 이동하기 [[0, 0, 0, 1, 1],[0, 0, 0, 1, 0],[0, 1, 0, 1, 1],[1, 1, 0, 0, 1],[0, 0, 0, 0, 0]] 7 programmers.co.kr 대충 맨왼쪽 위의 로봇이 맨오른쪽 아래로 가면 된다. 주어지는 입력은 0과 1로만 이루어진 위 board 하나이다. 문제 풀이 매번 로봇이 움직일 수 있는 케이스를 찾아서 큐에 시간과 함께 넣고 시간순서대로 하나씩 꺼내서 다시 또 움직일 수 있는 케이스를 찾아서 큐에 넣으면 된다. 이 때 주의할 점은, 1. 무조건 오른쪽 아래로 가는게 아니라 복잡한 board의 경우 왔다갔다 해야하므로 움직일 때 윗쪽으로 가는 경우도 생각해야 한다. 2. 로봇이 가로로 있는 경우, 세로로 있는..

카카오 2020기출 문자열 압축 코드, 해설 (파이썬) LV2 구현문제

문제 코드 전체가 궁금한 분은 깃허브 링크 눌러주세요 GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 설명 ㄱㄱ 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr 가령 aabbaccc 가 있다면 2a2ba3c 이런 식으로 나타낼 수 있다. -풀이- ...그냥 하면 되는데? 앞쪽부터 잘라서 인덱스를 옮겨주며 뒷쪽과 조금씩 비교하면 된다. ..

728x90