★Python CodeUp 100제 코드업 100제에서 생각이 더 필요했던 문제 5문제를 뽑아보았다. 코드에 대한 설명은 주석으로 달아놓았다. ★100문제 풀이 인증 ![](h
데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자열에서 같은 값이 연속해서 나타나는 것을 그 문자의 개수와 반복되는 값으로 표현
1. 그리디 알고리즘
0과 1일 때는 더해준다.이 외에는 곱해준다.매우 쉬운 문제이다.허나 문제의 최적의 해를 그리디 기법으로 구할 수 있는지에 대한 검토 능력을 기를 수 있는 아주 좋은 예시이다.
0과 1일 때는 더해준다.이 외에는 곱해준다.그리디 기법이 용이한지 검토하는 부분이 중요한 문제이다.공포도가 낮은 모험가부터 묶는게 좋은지 높은 모험가부터 묶는게 좋은지를 잘 판별해야 한다.
1931번 문제 바로가기한 개의 회의실이 있는데 이를 사용하고자 하는 N개의 회의에 대하여 회의실 사용표를 만들려고 한다. 각 회의 I에 대해 시작시간과 끝나는 시간이 주어져 있고, 각 회의가 겹치지 않게 하면서 회의실을 사용할 수 있는 회의의 최대 개수를 찾아보자.
11399번 문제 바로가기인하은행에는 ATM이 1대밖에 없다. 지금 이 ATM앞에 N명의 사람들이 줄을 서있다. 사람은 1번부터 N번까지 번호가 매겨져 있으며, i번 사람이 돈을 인출하는데 걸리는 시간은 Pi분이다.사람들이 줄을 서는 순서에 따라서, 돈을 인출하는데 필
어떤 나라에 N개의 도시가 있다. 이 도시들은 일직선 도로 위에 있다. 편의상 일직선을 수평 방향으로 두자. 제일 왼쪽의 도시에서 제일 오른쪽의 도시로 자동차를 이용하여 이동하려고 한다. 인접한 두 도시 사이의 도로들은 서로 길이가 다를 수 있다. 도로 길이의 단위는
상화좌우 좌표를 구현하고 그에 따른 이동과 예외처리 등 알고리즘은 쉽지만 비교적 구현이 까다로우므로 구현 유형의 문제라고 할 수 있다.또한 일련의 명령에 따라서 개체를 차례대로 이동시킨다는 점에서 '시뮬레이션 유형' 으로도 분류 가능하다.방향 벡터를 리스트로 정의하였다
24x60x60 = 86,400이다.파이썬은 1초에 20,000,000번 정도의 연산을 수행하므로 이 문제는 완전 탐색이 적절한 문제라고 할 수 있다.시각에 3이 들어있는지 쉽게 찾기 위하여 문자열로 형변환 해주었다.3분 11초구현 문제(완전탐색)에 대한 정확한 정의를
이 또한 주어진 경우를 시뮬레이션을 돌려보는 문제이므로 구현(시뮬레이션) 유형의 문제라고 할 수 있다.처음 접근했던 풀이이다.아스키 코드를 숫자로 변환하고 모든 경우의 수를 리스트로 담아 시뮬레이션을 돌린다는 점에서 정석 풀이와 같았지만, 코드의 간결함에서 차이가 났다
문자열을 다루는 단순 구현이다.처음 접근했던 풀이이다.슬라이싱을 이용하여 문제를 해결했다.숫자가 하나도 없을 때 예외처리가 있었다.풀이를 보고 힌트를 얻고 다시 작성한 코드이다.나의 풀이는 새로운 리스트를 사용하지 않고 원래 리스트를 슬라이싱하며 문제를 풀었다고 하면
카카오톡 게임별의 하반기 신규 서비스로 다트 게임을 출시하기로 했다. 다트 게임은 다트판에 다트를 세 차례 던져 그 점수의 합계로 실력을 겨루는 게임으로, 모두가 간단히 즐길 수 있다.갓 입사한 무지는 코딩 실력을 인정받아 게임의 핵심 부분인 점수 계산 로직을 맡게 되
BruteForce (완전 탐색)문제 바로가기정보문화진흥원 정보 영재 동아리에서 동아리 활동을 하던 영수와 민혁이는 쉬는 시간을 틈타 숫자야구 게임을 하기로 했다.영수는 1에서 9까지의 서로 다른 숫자 세 개로 구성된 세 자리 수를 마음속으로 생각한다. (예: 324)
일단 비트 마스킹을 사용하지 않아서 시간과 메모리를 많이 차지했다.두번재로 똑같은 로직을 비트마스킹으로 코딩했을 때는 while문에 올바른 범위를 주지 않아서 틀렸다.비트마스킹그리디문제 바로가기지민이는 N개의 물병을 가지고 있다. 각 물병에는 물을 무한대로 부을 수 있
문제 바로가기a와 b로만 이루어진 문자열이 주어질 때, a를 모두 연속으로 만들기 위해서 필요한 교환의 회수를 최소로 하는 프로그램을 작성하시오.이 문자열은 원형이기 때문에, 처음과 끝은 서로 인접해 있는 것이다.예를 들어, aabbaaabaaba이 주어졌을 때,
문제 바로가기좋은 패스워드를 만드는것은 어려운 일이다. 대부분의 사용자들은 buddy처럼 발음하기 좋고 기억하기 쉬운 패스워드를 원하나, 이런 패스워드들은 보안의 문제가 발생한다. 어떤 사이트들은 xvtpzyo 같은 비밀번호를 무작위로 부여해 주기도 하지만, 사용자들은
문제 바로가기흑백 영상을 압축하여 표현하는 데이터 구조로 쿼드 트리(Quad Tree)라는 방법이 있다. 흰 점을 나타내는 0과 검은 점을 나타내는 1로만 이루어진 영상(2차원 배열)에서 같은 숫자의 점들이 한 곳에 많이 몰려있으면, 쿼드 트리에서는 이를 압축하여 간단
문제 바로가기동혁이는 NBA 농구 경기를 즐겨 본다. 동혁이는 골이 들어갈 때 마다 골이 들어간 시간과 팀을 적는 이상한 취미를 가지고 있다.농구 경기는 정확히 48분동안 진행된다. 각 팀이 몇 분동안 이기고 있었는지 출력하는 프로그램을 작성하시오.첫째 줄에 골이 들어
문제 바로가기N명의 사람들은 매일 아침 한 줄로 선다. 이 사람들은 자리를 마음대로 서지 못하고 오민식의 지시대로 선다.어느 날 사람들은 오민식이 사람들이 줄 서는 위치를 기록해 놓는다는 것을 알았다. 그리고 아침에 자기가 기록해 놓은 것과 사람들이 줄을 선 위치가 맞
DFS -> Stack 이용재귀 -> StackDFS -> 재귀 이용하면 좋음위 코드에서 재귀가 리턴 되면서(Stack) 최대 깊이인 6까지 갔다가 1로 다시 돌아오고 다시 탐색을 시작한다.문자열을 다루는 단순 구현이다.처음 접근했던 풀이이다.슬라이싱을 이용하여 문제를
BFS -> Queue 이용위 코드에서 큐에서 꺼낸 노드의 인접한 노드들 부터 넓은 방향으로 방문하다가 모든 노드를 방문하여 큐에 남은 노드가 없을 때 반복을 종료한다.문자열을 다루는 단순 구현이다.처음 접근했던 풀이이다.슬라이싱을 이용하여 문제를 해결했다.숫자가 하나
문제 바로가기차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 효과적인 배추흰지렁이를 구입하기로 결심한다. 이 지렁이는 배추근처에 서식하며
LEVEL 3문제 바로가기두 개의 단어 begin, target과 단어의 집합 words가 있습니다. 아래와 같은 규칙을 이용하여 begin에서 target으로 변환하는 가장 짧은 변환 과정을 찾으려고 합니다.한 번에 한 개의 알파벳만 바꿀 수 있습니다.words에 있
골드5O잘못된 문제 이해 -> 로봇이 두번 움직인다는 것을 인지하지 못함문제 바로가기길이가 N인 컨베이어 벨트가 있고, 길이가 2N인 벨트가 이 컨베이어 벨트를 위아래로 감싸며 돌고 있다. 벨트는 길이 1 간격으로 2N개의 칸으로 나뉘어져 있으며, 각 칸에는 아래 그림
Silver 2XX최소힙최소힙은 우선순위 큐, 큐의 형태를 지니고 있지만 항상 정렬(불완전)된 상태를 유지하게 됨최소값을 찾기 쉬움문제 바로가기널리 잘 알려진 자료구조 중 최소 힙이 있다. 최소 힙을 이용하여 다음과 같은 연산을 지원하는 프로그램을 작성하시오.배열에 자
LEVEL 1X문제 바로가기순서가 정해져있으므로 항상 맨 앞에 것부터 비교하고 참이면 pop해줘서 다음 요소를 꺼낸다.큐를 떠올려야 한다.받은 리스트들을 전부 큐로 형변환한다.c1,c2,g 각각에 첫번째 요소들을 pop한다.goal에 요소가 없을 때까지 반복c1에서 같
Gold 4?경로가 같더라도 접근 방식이 다르면 다른 경우로 인식해야함문제 바로가기수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수
Gold 5XX문제 바로가기2차원 세계에 블록이 쌓여있다. 비가 오면 블록 사이에 빗물이 고인다비는 충분히 많이 온다. 고이는 빗물의 총량은 얼마일까?첫 번째 줄에는 2차원 세계의 세로 길이 H과 2차원 세계의 가로 길이 W가 주어진다. (1 ≤ H, W ≤ 500)두
Gold 5?가중치가 다른 간선을 고려하지 않았음문제 바로가기수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이
Gold 5XX문제 바로가기48 2 5 3530주어진 숫자를 LED의 형태로 변환하는 것이 중요하다.먼저 0~9까지에 대한 LED 정보를 0,1로 담아줬다.그리고 숫자를 LED 형태로 변환해주는 함수를 구현했다.만약 k=4 인데 2자리수의 숫자라면 k-2의 범위만큼 0
Gold 5O부분 해로 잘 나누지 못했음문제 바로가기N개의 스위치와 N개의 전구가 있다. 각각의 전구는 켜져 있는 상태와 꺼져 있는 상태 중 하나의 상태를 가진다. i(1 < i < N)번 스위치를 누르면 i-1, i, i+1의 세 개의 전구의 상태가 바뀐다
난이도 >Gold 4 풀이 참고 유무 >O 막힌 부분 > 경로를 찾는 방법을 감을 잡지 못함 문제 문제 바로가기 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에
Silver 1XX문제 바로가기코레스코 콘도미니엄 8층은 학생들이 3끼의 식사를 해결하는 공간이다. 그러나 몇몇 비양심적인 학생들의 만행으로 음식물이 통로 중간 중간에 떨어져 있다. 이러한 음식물들은 근처에 있는 것끼리 뭉치게 돼서 큰 음식물 쓰레기가 된다. 이 문제를
Gold 5Oeval함수로 문자열을 한번에 계산하지 않고 재귀할 때마다 계산함문제 바로가기1부터 N까지의 수를 오름차순으로 쓴 수열 1 2 3 ... N을 생각하자.그리고 '+'나 '-', 또는 ' '(공백)을 숫자 사이에 삽입하자(+는 더하기, -는 빼기, 공백은 숫
Gold 5X문제 설명이 애매모호함\-> 연합 결성~해제가 하루인지당일에 연합이 여러개 있을 때 한번에 연산하는게 1일인지 헷갈림문제 바로가기N×N크기의 땅이 있고, 땅은 1×1개의 칸으로 나누어져 있다. 각각의 땅에는 나라가 하나씩 존재하며, r행 c열에 있는 나라에
Gold 5O최대 효율을 낼 수 있는 치킨집을 선택하는 방법을 정하지 못함\-> 조합을 사용해 모든 경우를 비교함문제 바로가기크기가 N×N인 도시가 있다. 도시는 1×1크기의 칸으로 나누어져 있다. 도시의 각 칸은 빈 칸, 치킨집, 집 중 하나이다. 도시의 칸은 (r,
Gold 5XX문제 바로가기첫째 줄에 톱니바퀴의 개수 T (1 ≤ T ≤ 1,000)가 주어진다. 둘째 줄부터 T개의 줄에 톱니바퀴의 상태가 가장 왼쪽 톱니바퀴부터 순서대로 주어진다. 상태는 8개의 정수로 이루어져 있고, 12시방향부터 시계방향 순서대로 주어진다. N극
Silver 3XX문제 바로가기첫째 줄에 킹의 위치, 돌의 위치, 움직이는 횟수 N이 주어진다. 둘째 줄부터 N개의 줄에는 킹이 어떻게 움직여야 하는지 주어진다. N은 50보다 작거나 같은 자연수이고, 움직이는 정보는 위에 쓰여 있는 8가지 중 하나이다.첫째 줄에 킹의
Gold 5?시간 초과문제 바로가기작년에 이어 새로운 문자열 게임이 있다. 게임의 진행 방식은 아래와 같다.알파벳 소문자로 이루어진 문자열 W가 주어진다.양의 정수 K가 주어진다.어떤 문자를 정확히 K개를 포함하는 가장 짧은 연속 문자열의 길이를 구한다.어떤 문자를 정
Silver 1xx문제 바로가기첫째 줄에 M과 N, 그리고 K가 빈칸을 사이에 두고 차례로 주어진다. M, N, K는 모두 100 이하의 자연수이다. 둘째 줄부터 K개의 줄에는 한 줄에 하나씩 직사각형의 왼쪽 아래 꼭짓점의 x, y좌표값과 오른쪽 위 꼭짓점의 x, y좌
Gold 5xx문제 바로가기첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토들의 정보가 주어진다. 즉,
Gold 5xx문제 바로가기적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다.크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록), B(파랑) 중 하나를 색칠한 그림이 있다.
Gold 4x1.첫 풀이 틀림2.시간 초과로 인해 pypy사용문제 바로가기N개의 영단어들이 주어졌을 때, 가장 비슷한 두 단어를 구해내는 프로그램을 작성하시오.두 단어의 비슷한 정도는 두 단어의 접두사의 길이로 측정한다. 접두사란 두 단어의 앞부분에서 공통적으로 나타나
Silver 2x시간 초과문제 바로가기가희는 블로그를 운영하고 있습니다. 가희는 블로그에 글을 쓰기 위해, 메모장에 키워드를 적곤 합니다.지금까지 메모장에 써진 키워드는 모두 서로 다르며, 총 N개가 존재합니다.가희는 새로운 글을 작성할 때, 최대 10개의 키워드에 대
Silver 3x(구글링 o)x문제 바로가기선영이는 이번 학기에 오스트레일리아로 교환 학생을 가게 되었다. 호주에 도착하고 처음 며칠은 한국 생각을 잊으면서 즐겁게 지냈다. 몇 주가 지나니 한국이 그리워지기 시작했다. 선영이는 한국에 두고온 서버에 접속해서 디렉토리 안
Gold 3o시간 초과문제 바로가기N×M의 행렬로 표현되는 맵이 있다. 맵에서 0은 이동할 수 있는 곳을 나타내고, 1은 이동할 수 없는 벽이 있는 곳을 나타낸다. 당신은 (1, 1)에서 (N, M)의 위치까지 이동하려 하는데, 이때 최단 경로로 이동하려 한다. 최단경
Gold 4?불과 사람을 동시에 bfs 진행하려고 했음문제 바로가기상근이는 빈 공간과 벽으로 이루어진 건물에 갇혀있다. 건물의 일부에는 불이 났고, 상근이는 출구를 향해 뛰고 있다.매 초마다, 불은 동서남북 방향으로 인접한 빈 공간으로 퍼져나간다. 벽에는 불이 붙지 않
Silver 3XX문제 바로가기7 4appleantsandappleappendsandsandsandappleappendsorted 함수를 사용해야할 것으로 보인다.주어진 조건을 그대로 구현했다.13:11dictonary를 정렬 하려면 items()를 사용하고 items
Silver 3X아이디어문제 바로가기세준이는 1부터 N까지 모든 수를 차례대로 공백없이 한 줄에 다 썼다. 그리고 나서, 세준이가 저녁을 먹으러 나간 사이에 다솜이는 세준이가 쓴 수에서 마음에 드는 몇 개의 숫자를 지웠다.세준이는 저녁을 먹으러 갔다 와서, 자기가 쓴
Silver 4XX문제 바로가기상근이는 수학시간에 딴 짓을 하다가 선생님께 걸렸다. 선생님은 상근이에게 이번 주말동안 반성하라며 엄청난 숙제를 내주었다.선생님이 상근이에게 준 종이에는 숫자와 알파벳 소문자로 되어있는 글자가 N줄있다. 상근이는 여기서 숫자를 모두 찾은
Silver 1xx문제 바로가기어떤 큰 도화지에 그림이 그려져 있을 때, 그 그림의 개수와, 그 그림 중 넓이가 가장 넓은 것의 넓이를 출력하여라. 단, 그림이라는 것은 1로 연결된 것을 한 그림이라고 정의하자. 가로나 세로로 연결된 것은 연결이 된 것이고 대각선으로
Silver 1xx문제 바로가기첫 번째 줄에는 지도의 크기 N(정사각형이므로 가로와 세로의 크기는 같으며 5≤N≤25)이 입력되고, 그 다음 N줄에는 각각 N개의 자료(0혹은 1)가 입력된다.첫 번째 줄에는 총 단지수를 출력하시오. 그리고 각 단지내 집의 수를 오름차순
Gold 5?그래프를 직접 구현해서 특징을 확인하지 않음문제 바로가기첫째 줄에는 N(1≤N≤100)을 나타내는 정수 하나가 주어진다. 그 다음 줄부터는 표의 둘째 줄에 들어가는 정수들이 순서대로 한 줄에 하나씩 입력된다.첫째 줄에 뽑힌 정수들의 개수를 출력하고, 그 다
Gold 4?메모리, 시간 초과문제 바로가기세로 R칸, 가로 C칸으로 된 표 모양의 보드가 있다. 보드의 각 칸에는 대문자 알파벳이 하나씩 적혀 있고, 좌측 상단 칸 (1행 1열) 에는 말이 놓여 있다.말은 상하좌우로 인접한 네 칸 중의 한 칸으로 이동할 수 있는데,
Silver 3xx문제 바로가기자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오.1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8)한 줄에
문제 바로가기N과M위 문제에서 오름차순인 경우라는 조건이 추가 되었다.풀이는 N과M과 거의 비슷하고재귀를 호출할 때 인자로 위 노드의 +1을 주면 오름차순으로 정렬할 수 있다.
문제 바로가기N과M위 문제에서 중복허용이라는 조건이 추가 되었다.따라서 시간복잡도는 O(n!)에서 O(n^n)으로 변경된다.풀이는 N과M과 거의 비슷하고조건을 삭제하기 때문에 로직은 오히려 더 간단하다.겹치는 수가 있으므로 remove 대신 pop을 해줘야 순서가 꼬이
문제 바로가기N과M위 문제에서 중복허용과 비내림차순이라는 조건이 추가되었다.풀이는 N과M과 거의 비슷하고조건을 삭제하기 때문에 로직은 오히려 더 간단하다.겹치는 수가 있으므로 remove 대신 pop을 해줘야 순서가 꼬이지 않는다.또한 비내림차순으로 출력해야하므로 자식
Gold 4o퀸의 공격루트를 매번 조건으로 방문불가 처리를 하는 감을 못잡음퀸의 공격루트를 매 반복때마다 방문처리를 하면 무조건 시간초과가 날 것 같아서 감을 잡지 못함문제 바로가기N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓
Silver 1xx문제 바로가기N개의 수로 이루어진 수열 A1, A2, ..., AN이 주어진다. 또, 수와 수 사이에 끼워넣을 수 있는 N-1개의 연산자가 주어진다. 연산자는 덧셈(+), 뺄셈(-), 곱셈(×), 나눗셈(÷)으로만 이루어져 있다.우리는 수와 수 사이에
Silver 2?시간 초과문제 바로가기첫째 줄에 N(4 ≤ N ≤ 20, N은 짝수)이 주어진다. 둘째 줄부터 N개의 줄에 S가 주어진다. 각 줄은 N개의 수로 이루어져 있고, i번 줄의 j번째 수는 Sij 이다. Sii는 항상 0이고, 나머지 Sij는 1보다 크거나
Gold 5xx문제 바로가기바로 어제 최백준 조교가 방 열쇠를 주머니에 넣은 채 깜빡하고 서울로 가 버리는 황당한 상황에 직면한 조교들은, 702호에 새로운 보안 시스템을 설치하기로 하였다. 이 보안 시스템은 열쇠가 아닌 암호로 동작하게 되어 있는 시스템이다.암호는 서
Silver 2xx문제 바로가기N개의 정수로 이루어진 수열이 있을 때, 크기가 양수인 부분수열 중에서 그 수열의 원소를 다 더한 값이 S가 되는 경우의 수를 구하는 프로그램을 작성하시오.첫째 줄에 정수의 개수를 나타내는 N과 정수 S가 주어진다. (1 ≤ N ≤ 20,
Silver 3xx문제 바로가기자연수 N과 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오.1부터 N까지 자연수 중에서 M개를 고른 수열같은 수를 여러 번 골라도 된다.고른 수열은 비내림차순이어야 한다.길이가 K인 수열 A
Silver 2xx문제 바로가기독일 로또는 {1, 2, ..., 49}에서 수 6개를 고른다.로또 번호를 선택하는데 사용되는 가장 유명한 전략은 49가지 수 중 k(k>6)개의 수를 골라 집합 S를 만든 다음 그 수만 가지고 번호를 선택하는 것이다.예를 들어, k=8,
Gold 4?행과 열과 3x3의 사각형에서 스도쿠가 되는지 확인하는 방법 중 시간복잡도를 최대한 줄이는데에서 막혔다.문제 바로가기아홉 줄에 걸쳐 한 줄에 9개씩 게임 시작 전 스도쿠판 각 줄에 쓰여 있는 숫자가 한 칸씩 띄워서 차례로 주어진다. 스도쿠 판의 빈 칸의 경
Silver 2xx문제 바로가기그래프를 DFS로 탐색한 결과와 BFS로 탐색한 결과를 출력하는 프로그램을 작성하시오. 단, 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문하고, 더 이상 방문할 수 있는 점이 없는 경우 종료한다. 정점 번호는
Gold 4xx문제 바로가기첫째 줄에 지도의 세로 크기 N과 가로 크기 M이 주어진다. (3 ≤ N, M ≤ 8)둘째 줄부터 N개의 줄에 지도의 모양이 주어진다. 0은 빈 칸, 1은 벽, 2는 바이러스가 있는 위치이다. 2의 개수는 2보다 크거나 같고, 10보다 작거나
Silver 3xx문제 바로가기총 N개의 문자열로 이루어진 집합 S가 주어진다.입력으로 주어지는 M개의 문자열 중에서 집합 S에 포함되어 있는 것이 총 몇 개인지 구하는 프로그램을 작성하시오.첫째 줄에 문자열의 개수 N과 M (1 ≤ N ≤ 10,000, 1 ≤ M ≤
Gold 5xx문제 바로가기선영이는 주말에 할 일이 없어서 새로운 언어 AC를 만들었다. AC는 정수 배열에 연산을 하기 위해 만든 언어이다. 이 언어에는 두 가지 함수 R(뒤집기)과 D(버리기)가 있다.함수 R은 배열에 있는 수의 순서를 뒤집는 함수이고, D는 첫 번
Level 2문제 바로가기가능한 경우의 수를 판별하는 것이기 때문에 백트랙킹, 완전탐색, DFS, BFS 다 가능해보인다.여기서 백트랙킹, 완탐은 데이터 셋이 적기 때문에 가능해보인다.//백트랙킹, 완전탐색으로도 풀릴 것 같으나 조건이 추가되지 않고 +,-일때의 가중치
Level 3문제 바로가기대놓고 그래프를 줘서 탐색만 하면 되는걸로 보이는데 왜 Level3인지는 모르겠다.놓친 변수가 있을 수도 있으나 일단 DFS로 풀어보자//연결되어 있는 노드를 출구 없이 그냥 탐색만 하면 되므로 DFS가 더 적절해보인다.//DFS를 돌릴 때마다
python의 편리함에 익숙해져서 지금까지는 Python으로 PS를 진행해왔다.하지만 최근 문제들을 보면 Python과 Java를 둘 다 사용해서 문제를 푼 경우들이 대다수이다.데브코스 코딩테스트를 준비하면서 이제 주력언어가 될 Java로 푸는 연습을 했기 때문이다.P
Silver 5xx문제 바로가기알파벳 소문자로 이루어진 N개의 단어가 들어오면 아래와 같은 조건에 따라 정렬하는 프로그램을 작성하시오.길이가 짧은 것부터길이가 같으면 사전 순으로단, 중복된 단어는 하나만 남기고 제거해야 한다.첫째 줄에 단어의 개수 N이 주어진다. (1
Silver 4xx문제 바로가기김진영이 듣도 못한 사람의 명단과, 보도 못한 사람의 명단이 주어질 때, 듣도 보도 못한 사람의 명단을 구하는 프로그램을 작성하시오.첫째 줄에 듣도 못한 사람의 수 N, 보도 못한 사람의 수 M이 주어진다. 이어서 둘째 줄부터 N개의 줄에
Level 3문제 바로가기아이디어가 생각해내기 어려웠다.특히 좌표를 2배로 늘리는 과정은 내 힘으로는 떠올릴 수 없었다.//가중치가 1인 간격으로 테두리를 따라가는 BFS 풀이를 할 것이다.//ㄷ자 모양에서는 없는 경로로 바로 이동할 수 있으므로 한 칸 띄워주기 위해서
Gold 3xx문제 바로가기첫째 줄에 공간의 크기 N(2 ≤ N ≤ 20)이 주어진다.둘째 줄부터 N개의 줄에 공간의 상태가 주어진다. 공간의 상태는 0, 1, 2, 3, 4, 5, 6, 9로 이루어져 있고, 아래와 같은 의미를 가진다.0: 빈 칸21, 2, 3, 4,
Gold 4xx문제 바로가기첫째 줄에 사무실의 세로 크기 N과 가로 크기 M이 주어진다. (1 ≤ N, M ≤ 8)둘째 줄부터 N개의 줄에는 사무실 각 칸의 정보가 주어진다. 0은 빈 칸, 6은 벽, 1~5는 CCTV를 나타내고, 문제에서 설명한 CCTV의 종류이다.
난이도 >Gold 5 풀이 참고 유무 > x 막힌 부분 > x 문제 문제 바로가기 입력 >첫 줄에는 상자의 크기를 나타내는 두 정수 M,N과 쌓아올려지는 상자의 수를 나타내는 H가 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다.
Silver 3xx문제 바로가기첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하인 양의 정수이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍의 수가 주어진다. 이어서 그 수만큼 한 줄에 한
Silver 3xx문제 바로가기N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다.N개의 자연수 중에서 M개를 고른 수열같은 수를 여러 번 골라도 된다.고른 수열은 비
Silver 1?시간초과 문제 바로가기첫째 줄에 정수 N, r, c가 주어진다.r행 c열을 몇 번째로 방문했는지 출력한다.10 512 512786432재귀 문제로 보인다.4개로 쪼개서 문제를 풀이한다.조건문으로 어느 사분면에 해당하는지 확인하는 것이 중요함주석참고어떠한
난이도 >Gold 2 풀이 참고 유무 > x 막힌 부분 > 구현이 어려움 문제 문제 바로가기 입력 >첫째 줄에 보드의 크기 N (1 ≤ N ≤ 20)이 주어진다. 둘째 줄부터 N개의 줄에는 게임판의 초기 상태가 주어진다. 0은 빈 칸을 나타내며, 이외의 값은