728x90

코딩테스트 10

삼성기출, 백준 23288 주사위 굴리기2 파이썬 코드/풀이

한시간 정도 잡고 풀었는데 한시간 반 걸렸다. 예제에 안되는 문제가 있어서 디버깅 해보니까 주사위 돌리는 과정에서 딥카피가 안돼서 오류가 나고 있었다. 해당 부분 for문으로 값을 넣어줘서 딥카피로 해결했다. 총 4개 함수를 만들어서 풀었다. 1. 이동 방향 결정 + 주사위 모양 바꾸기 2. 주사위가 이동하는 부분의 좌표 확인 3. 좌표 확인시 뒤로 되돌아가는 경우 이동방향 재결정 및 주사위모양 다시바꾸기 4. 점수계산 N, M, total = map(int, input().split()) grid = [] for i in range(N): grid.append(list(map(int, input().split()))) dice = [[0 for i in range(3)] for j in range(4)..

220806 직장인이란, 그동안의 코딩테스트 결과들

1. 직장인이란 모든 사람은 살기 위해서 일을 해야한다. 여기서 말하는 일이란 지금내가 하는 사무적 업무뿐 아니라, 원시시대 때부터 일컫던 어떤 개념을 얘기한다. 석기시대 즈음.. 내가 태어났다면 나는 살기위해 나와 내 가족의 옷을 만들고 먹을것을 구하고 집을 구하는 일을 했을 것이다. 일을 못했으면 동물에게 잡아 먹혔거나, 얼어 죽거나, 굶어 죽었을 것이다. 그에 비하면 지금은 세상이 참 좋아졌다. 모두가 일을 분담해 개인은 자신이 더 잘하는/자신있는 어떤 일을 해 안정적인 삶을 영위할 수 있으니까. 하지만 여전히, 살기 위해, '일'을 해야 한다는 것은 변하지 않았다. 그리고 그 '일'의 개념또한 크게 변하지 않았다. 석기시대 '일'의 개념은 무엇을 만드는 과정이였다. 그리고 지금의 '일' 또한 무엇..

220324 넥슨 데이터분석 코딩테스트, sk ict family 2차 코딩테스트 후기

지난 토요일(3/19) sk ict family 2차 코딩테스트가 있었고 엊그제 (3/22)화요일에 넥슨 코딩테스트가 있었다. 일 하고 와서 힘드니까 간단히만..쓰겠습니다.ㅋㅋㅋ 누군가는 도움이 될거같아서, 특히 넥슨 코딩테스트. 1. sk ict family 코딩테스트 2차 : 1차 코딩테스트는 통과였어서, (아마 나는 3솔) 2차 코딩테스트를 볼 기회가 생겼다. 솔직히 말하면 그렇게 잘 보지를 못햇다.ㅋㅋㅋ 1번부터 4번까지 4문제가 있었(던것같은데) 시간제한은 4시간이였다. 1번문제는 그냥 문자열 문제였다. 그렇게 어렵진 않았는데 뭐 시간제한이 있으면 틀렷을수도 ? for문으로 풀엇으니까. 근데 딱 한가지 예외 케이스가 있어서 이런 경우만 잘 생각하면 되는 문제였다. 그냥 문자열 문제. 2번 문제는..

리트코드, 백준 그리고 프로그래머스의 차이. 코딩테스트 연습 사이트를 비교해보면?

항상 이 주제로 글을 쓰고 싶었는데 드디어 쓴다. 우선 개발을 해야 하는 직군에서 일을 하고 싶은 사람이라면 코딩테스트가 뭔지 알거고, 코딩테스트 라는것에 대해서 준비를 해볼까-라고 한번이라도 생각해본 사람이라면 위 사이트 세개를 들어봣을 것 같다. 적어도 저 세개 중 한개는 들어봤을 거고, 여기에서 더 나아가면 삼성sw아카데미까지 들어봤을 것 같다. 위 세개의 웹사이트는 모두 코딩테스트를 준비중인 사람을 위한 웹사이트이지만 조금씩 차이가 있다. 나는 각각의 웹사이트에서 적어도 몇십문제씩은 풀어봤고, 그렇게 위 웹사이트들을 활용해서 코딩테스트 공부를 하면서 느낀 점을 오늘 공유해볼려고 한다. 우선 세 웹사이트의 공통점에 대해서 먼저 말을 하겠다. 공통점?.. 코딩테스트 공부하는 웹사이트라는점. 나머진 다..

코딩테스트 2021.10.06

백준 2667번 단지번호붙이기 문제 해설/풀이/코드 (파이썬) 기본 스택 문제

코드만 궁금한 분은 깃허브링크 제목에 쓴것처럼 기초 스택문제이다. 주어진 이중리스트는(이하 격자) 1과 0으로 구성돼있다. 해당 격자에서 1끼리 서로 인접해있는 경우 그걸 한 덩이로 봤을때 총 몇 덩이가 있고 각각 몇개의 격자로 구성돼있는지를 알아내야하는 문제이다. 문제 풀기 1. 이중 for문으로 모든 요소에 대해서 1인지 확인. 2. 만약 1인 요소 찾으면 스택에 넣고 근처에 인접한 요소중에 1이 있는지 확인하기 2. 이 때 이미 1을 찾은 부분은 0으로 표시하고 1->0으로 바꾼 갯수를 센다. 4. 근처 인접한 요소에 더이상 1이없으면 갯수 저장하고 1번부터 반복. 기본중의 기본중의 기본 스택문제이다. 이거 못풀면 아무 스택문제도 못푼다고 보면된다. 다시 말하면 스택 기본 연습하기에 좋은 문제.

백준 2294번 동전 2 풀이/해설/코드 (파이썬) 다이나믹 프로그래밍을 활용해보자

코드만 궁금한 분은 깃허브링크 사실 내가 dp를 잘 하는 편은 아닌데 2293번 어제 푼거를 머릿속에 생각해보면서 푸니까 그래도 다소 어렵지 않게 풀 수 있었다. 문제를 대충 알려주자면, 1, 2, 5 이런식으로 무작위의 숫자들과 다른 숫자 임의의 숫자 하나가(예시를 들기 위해 10으로 한다.) 주어진다. 이 때 앞쪽에 주어진 숫자 1, 2, 5들을 이용해 10을 구성하는데 그 때 가장 적은 수로 숫자들을 이용하는 경우를 반환하면 된다. 말이 좀 이상한데, 간단히 얘기해서 10은 1을 10번 써도 되지만 5를 2번 써도 된다. 그럼 2가 더 작으니까 답은 2가 된다. 문제 풀기 1. 구성해야 하는 숫자 N의 길이만큼의 리스트를 미리 만든다. 2. 앞에 무작위로 주어졌던 숫자들 중 작은 수부터 활용해서, ..

백준 1806번 부분합 풀이/해설/코드 (파이썬)

코드만 궁금한 분은 링크 GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제 설명 숫자로 이루어진 리스트가 주어지고 임의의 숫자가 주어진다. 그 리스트 안에서 연속된 숫자들의 합으로 임의의 숫자와 같거나 큰 수를 만들 수 있는데 그 연속된 숫자열들 중 가장 길이가 짧은 것의 길이를 반환해야 한다. 문제 풀이 전형적인 투포인터문제이다. 1. 리스트의 왼쪽 끝 부분과 오른쪽 끝 부분을 가리키는 포인터를 만든다. 2. for문이나 while문을 사용해서 왼쪽끝~오른쪽끝까지의 합을 계산한다. 3. 계산된 값이 조건으로 주어진 값보다 크면 길이..

백준 1700번 멀티탭 스케줄링 문제 해설/코드 (파이썬)

코드만 궁금한 분은 링크 GitHub - Rhyankwon/algorithms Contribute to Rhyankwon/algorithms development by creating an account on GitHub. github.com 문제는 간단하다. N크기의 리스트가 있고 거기에 주어진 순서대로 숫자들을 넣으면 된다. 당연히, 이 때 이미 리스트 안에 있는 숫자는 순번을 pass하면 되고 그렇지 않은 경우는 안쪽의 수를 꺼내고 지금의 숫자를 리스트 안에 넣어야 한다. 문제에서 요구하는 답은, 이 때 리스트 안의 수를 제거하는 횟수의 최솟값이다. 이 때 최소한으로 리스트 안의 값을 제거하려면 다음과 같은 로직이 필요하다. 1. 이후에 다시 등장하지 않는 수를 제거하는게 최선 2. 가장 멀리 떨어..

프로그래머스 8주차 위클리 챌린지 최소직사각형 문제 해설/코드 (파이썬)

코드만 궁금한 분은 링크 사실 문제가 이전의 위클리 챌린지 문제들에 비해 다소 쉬운편이라 오늘 해설도 간략하게 쓰려고 한다. 코드 보면 바로 이해될거라서.. 카드를 여러장 받는데, 이 때 모든 카드를 다 포함하는 수 있는 최소 가로-세로의 크기를 구하는 문제이다. 카드는 회전이 가능하기때문에 여러장의 카드의 최소 가로/세로를 구하려면 각 카드의 짧은 부분끼리 비교하고 긴 부분끼리 비교하면 된다. 그렇게 해서 짧은 부분들의 가장 큰 값, 긴 부분들의 가장 큰 값 각각이 답을 만족하는 가로/세로가 된다.

내가 쓰는 온라인 파이썬 에디터 추천

https://replit.com/ The collaborative browser based IDE Replit is a simple yet powerful online IDE, Editor, Compiler, Interpreter, and REPL. Code, compile, run, and host in 50+ programming languages. replit.com 다른 온라인 에디터들은 어떤지 잘 모르지만.. 내 개인적으로 어차피 지금 사지방에서 코딩할 때 아니고서야 앞으로 살면서 온라인 에디터를 쓸일이 별로 없을 것 같아서 굳이 막 이거저거 비교해가면서 찾고싶진 않다. replit에서는 깃허브아이디로 로그인하면 바로 쓸 수가 있고 무료이고 디버깅할 때도 불편함을 느끼지 못했다. 사용과정이 너..

코딩테스트 2021.09.02
728x90