프로그래머스 2019년 카카오 겨울 인턴쉽 튜플 python
·
Algorithm
프로그래머스 2019년 카카오 겨울 인턴쉽 튜플 python 출처https://programmers.co.kr/learn/courses/30/lessons/64065?language=python3 문제 설명셀수있는 수량의 순서있는 열거 또는 어떤 순서를 따르는 요소들의 모음을 튜플(tuple)이라고 합니다. n개의 요소를 가진 튜플을 n-튜플(n-tuple)이라고 하며, 다음과 같이 표현할 수 있습니다. (a1, a2, a3, ..., an)튜플은 다음과 같은 성질을 가지고 있습니다. 중복된 원소가 있을 수 있습니다. ex : (2, 3, 1, 2)원소에 정해진 순서가 있으며, 원소의 순서가 다르면 서로 다른 튜플입니다. ex : (1, 2, 3) ≠ (1, 3, 2)튜플의 원소 개수는 유한합니다.원소의..
프로그래머스 2019년 카카오 겨울 인턴쉽 크레인 인형뽑기 게임 python
·
Algorithm
프로그래머스 2019년 카카오 겨울 인턴쉽 크레인 인형뽑기 게임 python 출처 : https://programmers.co.kr/learn/courses/30/lessons/64061 문제 설명게임개발자인 죠르디는 크레인 인형뽑기 기계를 모바일 게임으로 만들려고 합니다.죠르디는 게임의 재미를 높이기 위해 화면 구성과 규칙을 다음과 같이 게임 로직에 반영하려고 합니다. 게임 화면은 1 x 1 크기의 칸들로 이루어진 N x N 크기의 정사각 격자이며 위쪽에는 크레인이 있고 오른쪽에는 바구니가 있습니다. (위 그림은 5 x 5 크기의 예시입니다). 각 격자 칸에는 다양한 인형이 들어 있으며 인형이 없는 칸은 빈칸입니다. 모든 인형은 1 x 1 크기의 격자 한 칸을 차지하며 격자의 가장 아래 칸부터 차곡차곡..
백준 삼성 코딩 기출 문제 - 스타트와 링크 python
·
Algorithm
백준 삼성 코딩 기출 문제 - 스타트와 링크 python 출처 : BAEKJOON ONLINE JUDGE스타트와 링크 (https://www.acmicpc.net/problem/14889) 문제 설명축구를 하기 위해 짝수인 N명이 모여 N/2명으로 팀을 구성하려고 합니다. 이 문제는 2개의 팀(스타트, 링크팀)의 능력치 차이의 최소값을 출력하는 문제입니다. 능력치를 계산하는 방법은 팀원들끼리 주어진 배열에서 row 인덱스인 i와 column 인덱스의 j를 서로 맞바꿔 값을 더합니다. 문제 풀이재귀 함수로 구현합니다[1] 입력을 받습니다.n = int(input()) team = [list(map(int, input().split())) for _ in range(n)] [2] 스타트 팀과 링크팀을 구분하..
백준 삼성 코딩 기출 문제 - 연산자 끼워넣기 python
·
Algorithm
백준 삼성 코딩 기출 문제 - 연산자 끼워넣기 python 출처 : BAEKJOON ONLINE JUDGE연산자 끼워넣기 (https://www.acmicpc.net/problem/14888) 문제 설명N개의 수로 이루어진 수열에서 각 수마다 N-1개의 연산자가 주어집니다. 각 연산자는 사칙연산으로 덧셈(+), 뺄셈(-), 곱셈(x), 나눗셈(%)가 주어집니다. 수의 순서를 바꾸지 않으면서 각 연산을 적용해보고, 식의 결과의 최대값과 최소값을 구하는 문제입니다. 문제 풀이재귀 함수를 이용해 구현하면 문제 풀이는 쉽습니다. [1] 입력을 받습니다.덧셈, 뺄셈, 곱셈, 나눗셈 순서로 operation에 저장합니다.n = int(input()) number = list(map(int, input().split..
백준 삼성 코딩 기출 문제 - 로봇청소기 python
·
Algorithm
백준 삼성 코딩 기출 문제 - 로봇청소기 python 출처 : BAEKJOON ONLINE JUDGE로봇청소기 (https://www.acmicpc.net/problem/14503) 문제 설명NxM의 크기의 맵에서 로봇 청소기가 청소를 진행합니다. 주어진 위치에서 청소를 진행하고, 현재 방향을 기준으로 왼쪽 방향으로 회전하면서 탐색을 진행합니다. 빈 칸(0)이면 전진하고 청소(2)합니다. 왼쪽 방향에 청소할 공간이 없으면 회전합니다. 네 방향 모두 청소(2)가 되었거나 벽(1)이라면, 방향을 유지한 채 한 칸 후진합니다. 만약 후진도 할 수 없는 경우라면 작동을 멈춥니다. 문제 풀이[1] 입력을 받습니다.n, m = map(int, input().split()) x, y, d = map(int, inpu..
백준 삼성 코딩 기출 문제 - 연구소 python
·
Algorithm
백준 삼성 코딩 기출 문제 - 연구소 python 출처 : BAEKJOON ONLINE JUDGE연구소 (https://www.acmicpc.net/problem/14502) 문제 설명연구소 NxM 크기에 빈 칸(0), 벽(1) 그리고 바이러스(2)가 있습니다. 바이러스는 상하좌우로 인접한 빈 칸으로 퍼져나갑니다. 새로 세울 수 있는 벽은 3개로 고정됩니다. 무조건 3개를 세워야합니다. 벽을 3개 세운 뒤에 바이러스가 퍼질 수 없는 곳이 안전 영역입니다. 안전 영역 크기(칸의 개수)의 최대값을 구하는 것이 문제입니다. 문제 풀이이 문제는 DFS로 접근합니다. DFS(Depth First Search) 알고리즘은 stack(LIFO)과 재귀 함수를 사용해 구현해야 합니다. [1] 입력을 받습니다.n, m ..
백준 삼성 코딩 기출 문제 - 퇴사 python
·
Algorithm
백준 삼성 코딩 기출 문제 - 퇴사 python 출처 : BAEKJOON ONLINE JUDGE퇴사 (https://www.acmicpc.net/problem/14501) 문제 설명퇴사를 진행행하려 하는는데 N+1일 째 되는날 퇴사를 하기 위해서 N일 동안 많은 상담을 하려고 합니다.상담을 완료하는데 걸리는 시간 T와 상담을 했을 때 받을 수 있는 금액 P를 보고, 퇴사 전까지 최대 수익을 구하는 문제입니다. 문제 풀이각 팀의 회의 시작 시간과 회의 시간이 정해진 타임 테이블에서 최대한 많은 회의를 잡으려고 하는 dynamic programming과 비슷합니다. dynamic programming으로 풀면 쉽습니다. [1] 입력을 받습니다. 입력받은 n으로 t와 p라는 배열을 선언하고 들어오는 입력에 배..
백준 삼성 코딩 기출 문제 - 테트로미노 python
·
Algorithm
백준 삼성 코딩 기출 문제 - 테트로미노 python 출처 : BAEKJOON ONLINE JUDGE2048 (Easy) (https://www.acmicpc.net/problem/14500) 문제 설명문제는 흔히 우리가 알고 있는 테트리스의 모양을 이용해서 주어진 맵 NxM에 어느 위치에 있던 테트로미노 하나를 놓게 됩니다. 그러면 테트로미노 안에 놓여 있는 칸에 수들의 합을 최대로 구하는 프로그램을 구하는 것입니다.figure reference(https://www.acmicpc.net/problem/14500) 첫 번째 케이스를 예로 들면 다음과 같이 합의 최대값 19를 뽑을 수 있습니다. 모든 경우의 계산을 진행해야 합니다. 회전과 대칭에 따라 테트리스의 모양은 19개 입니다. 문제 풀이[1] 입..
김 정출
'Algorithm' 카테고리의 글 목록