Programmers / [1차] 프렌즈4블록 / Python 파이썬
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: [1차] 프렌즈4블록 문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/17679 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 프렌즈4블록 블라인드 공채를 통과한 신입 사원 라이언은 신규 게임 개발 업무를 맡게 되었다. 이번에 출시할 게임 제목은 "프렌즈4블록". 같은 모양의 카카오프렌즈 블록이 2×2 형태로 4개가 붙어있을 경우 사라지면서 점수를 얻는 게임이다. 만약 판이 위와 같이 주어질 경우, 라이언이 2×2로 배치된..
Programmers / [3차] 압축 / Python 파이썬
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: [3차] 압축 (2단계) 문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/17684 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 압축 신입사원 어피치는 카카오톡으로 전송되는 메시지를 압축하여 전송 효율을 높이는 업무를 맡게 되었다. 메시지를 압축하더라도 전달되는 정보가 바뀌어서는 안 되므로, 압축 전의 정보를 완벽하게 복원 가능한 무손실 압축 알고리즘을 구현하기로 했다. 어피치는 여러 압축 알고리즘 중에서 성능이 좋고 구현..
Programmers / 주차 요금 계산 / Python 파이썬
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 주차 요금 계산 (2단계) 문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/92341 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 문제 설명 주차장의 요금표와 차량이 들어오고(입차) 나간(출차) 기록이 주어졌을 때, 차량별로 주차 요금을 계산하려고 합니다. 아래는 하나의 예시를 나타냅니다. 요금표 기본 시간(분)기본 요금(원)단위 시간(분)단위 요금(원) 180 5000 10 600 입/출차 기록 시각(시:분)차량 번호내역..
Programmers / 오픈 채팅방 / Python 파이썬
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 오픈 채팅방 (2단계) 문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/42888 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 오픈채팅방 카카오톡 오픈채팅방에서는 친구가 아닌 사람들과 대화를 할 수 있는데, 본래 닉네임이 아닌 가상의 닉네임을 사용하여 채팅방에 들어갈 수 있다. 신입사원인 김크루는 카카오톡 오픈 채팅방을 개설한 사람을 위해, 다양한 사람들이 들어오고, 나가는 것을 지켜볼 수 있는 관리자창을 만들기로 했다. ..
[딥러닝] Convolutional Neural Networks - 강의 정리
·
공부정리/모두를 위한 딥러닝 (강의 정리)
해당 게시글은 모두를 위한 딥러닝 강좌 시즌 1 - Sung Kim 강의를 바탕으로 작성하였습니다. 해당 이미지의 출처는 모두 해당 강의에 있습니다. CNN의 기본적인 아이디어: 고양이 실험 고양이 어떤 형태의 그림에 대해서만 반응한다는 것을 알게됨 그림에따라 인식하는 뉴런의 신호가 달랐다 (입력을 나누어 받음) 해당 실험을 성공적으로 구현한 것이 CNN 과정 전체의 이미지를 받지 않고 일부분만 따로 처리한다. -> filter (고양이 실험처럼 ) Filter 여기서 filter는 우리가 사이즈를 정할 수 있다. 그리고 해당되는 값에서 한 점만 처리한다. 이것이 filter가 하는 일임 그렇다면 5x5x3 filter를 어떻게 한 값으로 만들어내는 것인가? 필터가 움직일 수 있는 범위만큼의 값이 만들어..
Programmers / K진수에서 소수의 개수 구하기 / Python 파이썬
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: K진수에서 소수의 개수 구하기 (2단계) 문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/92335 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 문제 설명 양의 정수 n이 주어집니다. 이 숫자를 k진수로 바꿨을 때, 변환된 수 안에 아래 조건에 맞는 소수(Prime number)가 몇 개인지 알아보려 합니다. 0P0처럼 소수 양쪽에 0이 있는 경우 P0처럼 소수 오른쪽에만 0이 있고 왼쪽에는 아무것도 없는 경우 0P처럼 소..
Programmers / 튜플 / Python 파이썬
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 튜플 (2단계) 문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/64065 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 셀수있는 수량의 순서있는 열거 또는 어떤 순서를 따르는 요소들의 모음을 튜플(tuple)이라고 합니다. n개의 요소를 가진 튜플을 n-튜플(n-tuple)이라고 하며, 다음과 같이 표현할 수 있습니다. (a1, a2, a3, ..., an) 튜플은 다음과 같은 성질을 가지고 있습니다. 중복된 원소가 있을 ..
Programmers / 점프와 순간이동 / Python 파이썬
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 점프와 순간이동 (2단계) 문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/12980 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 점프와 순간 이동 문제 설명 OO 연구소는 한 번에 K 칸을 앞으로 점프하거나, (현재까지 온 거리) x 2 에 해당하는 위치로 순간이동을 할 수 있는 특수한 기능을 가진 아이언 슈트를 개발하여 판매하고 있습니다. 이 아이언 슈트는 건전지로 작동되는데, 순간이동을 하면 건전지 사용량이 줄지 않지만, 앞으로..
Programmers / 메뉴 리뉴얼 / Python 파이썬
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: 메뉴 리뉴얼 (2단계) 문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/72411 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 레스토랑을 운영하던 스카피는 코로나19로 인한 불경기를 극복하고자 메뉴를 새로 구성하려고 고민하고 있습니다. 기존에는 단품으로만 제공하던 메뉴를 조합해서 코스요리 형태로 재구성해서 새로운 메뉴를 제공하기로 결정했습니다. 어떤 단품메뉴들을 조합해서 코스요리 메뉴로 구성하면 좋을 지 고민하던 "스카피"..
Programmers / N- Queens / Python 파이썬
·
coding test - python/Programmers
*문제 출처는 프로그래머스에 있습니다. 문제 제목: N-Queen (2단계) 문제 사이트: https://school.programmers.co.kr/learn/courses/30/lessons/12952 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 가로, 세로 길이가 n인 정사각형으로된 체스판이 있습니다. 체스판 위의 n개의 퀸이 서로를 공격할 수 없도록 배치하고 싶습니다. 예를 들어서 n이 4인경우 다음과 같이 퀸을 배치하면 n개의 퀸은 서로를 한번에 공격 할 수 없습니다. 체스판의 가로 세로의 세로의 길이 n이 매개변수로 주어질 때, n..
[알고리즘] 백트래킹 (backtracking) - n-Queens 문제 구현 / 파이썬 Python
·
python/자료구조 & 알고리즘
4-Queens 문제 (n = 4) 4개의 퀸을 4x4 체스보드에 배치 일단, 기본 가정으로 같은 행(row)에는 놓을 수 없음 후보 해답: 4 * 4 * 4 * = 256 가지의 탐색 공간이 있음 (하나의 행에 하나만 놓을 수 있다는 것 -> 4가지, 4개의 행) -> 4*4*4*4 프루닝 (가지치기)와 프로미싱을 어떻게 할 것인가? 첫번째 경우 -> 2번째행 3열,4열 (퀸을 둘 수 있음) 두번째 행에서 3번째 열에 해당될때 모든 경우의 수가 성립하지 않으므로 다음 경우의 수로 넘어간다. 그다음 행에서 가능한 공간을 찾아보자. 대각선, 같은 행, 같은 열에는 존재하면 안된다. (서로 공격하지 못하는 거리에 있어야함 성립하는 경우가 없으므로 다른 경우로 넘어가자 N-Queens 문제 해결 기본 가정: ..
[알고리즘] 백트래킹(backtracking) 알고리즘 / 파이썬 Python
·
python/자료구조 & 알고리즘
되추적 / 백트래킹(backtracking) 임의의 집합(set)에서 주어진 기준(criterion)대로 원소의 순서를 선택하는 문제를 푸는 데 적합 트리 자료구조의 변형된 깊이 우선 탐색(DFS) 모든 문제 사례에 대해 효율적이진 않지만 많은 문제 사례에 대해 효율적임 n-Queens, 부분 집합의 합, 0-1 배낭문제, etc 미로찾기 문제 해당 문제는 스택 알고리즘을 이용해서도 풀 수 있다. 예시 pop: stack의 마지막에 있는 것 꺼낸다 posh: stack의 제일 뒤에 쌓는다 DFS 형태로 방문하고 백트래킹 하는 형식으로 문제를 해결할 수 있다. 상태공간트리(State Space Tree) 상태공간: 해답을 탐색하기 위한 탐색 공간 상태공간트리: 탐색 공간을 트리 형태의 구조로 암묵적으로 해..