https://www.acmicpc.net/problem/9095정수 n이 주어졌을 때, n을 1, 2, 3의 합으로 나타내는 방법의 수를 구하는 문제다. 합을 나타낼 때는 수를 1개 이상 사용해야 한다. 문제 탐색하기- 문제에서 구해야 하는 최종 정답은 무엇인지 탐색한 과정- 그 정답을 구하기 위해 어떻게 코드를 구현해야 할지 고민한 과정- 문제에 들어오는 범위를 파악하며 어떤 알고리즘을 쓸 수 있을지 고민해 가는 과정ex. 가능한 시간 복잡도, 알고리즘 선택입출력 제한1 ≤ N ≤ 10 N이 1부터 10까지의 정수이기 때문에 모든 N에 대해 직접 쓰면서 수를 세봐도 간단하게(?) 구할 수 있는 문제다.더보기1년 전엔 아래 코드를 제출해서 정답 처리가 됐다. 🙃 왜 제출했을까?#include usin..
전체 글
https://www.acmicpc.net/problem/10026크기가 N × N인 그리드의 각 칸에 R(빨강), G(초록), B(파랑) 중 하나를 색칠한 그림이 있다. 그림은 몇 개의 구역으로 나눠져 있는데, 한 구역은 같은 색으로 이루어져 있다. 또, 같은 색상이 상하좌우로 인접해 있는 경우에 두 글자는 같은 구역에 속한다. 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못하기 때문에, 적록색약인 사람이 보는 그림은 적록색약이 아닌 사람이 보는 그림과는 좀 다를 수 있다. 그림이 입력으로 주어졌을 때, 적록색약인 사람이 봤을 때와 아닌 사람이 봤을 때 구역의 수를 구하는 문제다. 문제 탐색하기- 문제에서 구해야 하는 최종 정답은 무엇인지 탐색한 과정- 그 정답을 구하기 위해 어떻게 코드를 구현해야..
https://www.acmicpc.net/problem/27737농부 해강이는 N × N 칸으로 이루어진 나무판에서 버섯 농사를 짓는다. 나무판은 버섯이 자랄 수 있는 칸과 없는 칸으로 이루어져 있고, 해강이는 M개의 버섯 포자를 버섯이 자랄 수 있는 칸에만 심을 수 있다. 각 버섯 포자는 심어진 칸을 포함해 최대 K개의 연결된 (버섯이 자랄 수 있는) 칸에 버섯을 자라게 한다. 이때 연결된 칸은 상하좌우로 적어도 한 변을 공유하는 칸들의 집합이다. 또한 한 칸에 버섯 포자를 여러 개 겹쳐서 심을 수 있으며, 만약 x개의 버섯 포자를 겹쳐 심으면 포자가 심어진 칸을 포함해 최대 x × K개의 연결된 (버섯이 자랄 수 있는) 칸에 버섯이 자란다.해강이는 버섯 포자를 심을 때 최소 개수로만 심으려고 한다...
1. 웹 서버(Web Server), 웹 애플리케이션 서버(WAS - Web Application Server)브라우저에서 URL을 치면 인터넷을 통해 서버에 접근하고, 서버에서는 HTML을 만들어 클라이언트에 보낸다. 클라이언트와 서버가 요청과 응답을 할 때 모두 HTTP라는 프로토콜을 기반으로 동작한다. 모든 것을 HTTP 메시지에 담아 전송한다는 것이다. 웹 서버(Web Server)웹 서버(Web Server)는 HTTP를 기반으로 동작하는 서버로, 정적 리소스를 제공하고 기타 부가 기능을 갖고 있다. 정적 리소스란 정적(파일) HTML, CSS, JS, 이미지, 영상 등이 포함되며, 특정 사용자마다 다르게 보여줄 수가 없고 말 그대로 정적인 파일이라고 볼 수 있다. 대표적으로 Nginx와 Apa..
https://www.acmicpc.net/problem/4963정사각형으로 이루어져 있는 섬과 바다 지도가 주어진다. 한 정사각형과 가로, 세로 또는 대각선으로 연결된 사각형은 걸어갈 수 있는 사각형이다. 한 정사각형에서 다른 정사각형으로 걸어서 갈 수 있는 경로가 있을 경우 두 정사각형을 하나의 섬으로 본다. 지도는 바다로 둘러싸여 있으며, 지도 밖으로 나갈 수 없다. 최종적으로 지도가 주어질 때 섬의 개수를 세는 문제다. 문제 탐색하기- 문제에서 구해야 하는 최종 정답은 무엇인지 탐색한 과정- 그 정답을 구하기 위해 어떻게 코드를 구현해야 할지 고민한 과정- 문제에 들어오는 범위를 파악하며 어떤 알고리즘을 쓸 수 있을지 고민해 가는 과정ex. 가능한 시간 복잡도, 알고리즘 선택입출력 제한1 ≤ w,..
https://www.acmicpc.net/problem/1326개구리가 일렬로 놓여 있는 징검다리 사이를 뛰어다니고 있다. 징검다리에는 숫자가 각각 쓰여 있고, 이 개구리가 어떤 징검다리에서 점프를 할 때는 그 징검다리에 쓰여 있는 수의 배수만큼 떨어져 있는 곳으로만 갈 수 있다. 개구리가 a번째 징검다리에서 b번째 징검다리로 가려고 할 때, 최소 몇 번 점프를 해야 하는지 구하는 문제다. 문제 탐색하기- 문제에서 구해야 하는 최종 정답은 무엇인지 탐색한 과정- 그 정답을 구하기 위해 어떻게 코드를 구현해야 할지 고민한 과정- 문제에 들어오는 범위를 파악하며 어떤 알고리즘을 쓸 수 있을지 고민해 가는 과정ex. 가능한 시간 복잡도, 알고리즘 선택입출력 제한1 ≤ a,b ≤ N ≤ 10,0001 ≤ 징검..
https://www.acmicpc.net/problem/1011공간이동 장치를 이용하는 우주선이 있다. 공간이동 장치 작동 시의 에너지 소모를 줄이기 위해 x 지점에서 y 지점을 향해 최소한의 작동 횟수로 이동하려고 한다. 이 공간이동 장치는 특별한 규칙대로 작동한다.이전 작동시기에 k광년을 이동했을 때는 k-1, k 혹은 k+1 광년만을 다시 이동할 수 있다.y 지점에 도착해서도 공간이동 장치의 안정성을 위하여 y 지점에 도착하기 바로 직전의 이동 거리는 반드시 1 광년으로 하려 한다. 최종적으로 x 지점부터 정확히 y 지점으로 이동하는데 필요한 공간이동 장치 작동 횟수의 최솟값을 구하는 문제다. 문제 탐색하기- 문제에서 구해야 하는 최종 정답은 무엇인지 탐색한 과정- 그 정답을 구하기 위해 어떻게 ..
https://www.acmicpc.net/problem/30804과일 탕후루에 N개의 과일이 꽂혀있다. 과일의 각 종류에는 1부터 9까지의 번호가 붙어있고, 앞쪽부터 차례로 S1, ..., Sn번 과일이 꽂혀있다. 이때, 과일 탕후루에 과일이 두 종류만 남도록 막대의 앞쪽과 뒤쪽에서 몇 개의 과일을 빼야 한다. 과일을 두 종류 이하로 사용한 탕후루 중에서, 과일의 개수가 가장 많은 탕후루의 과일 개수를 구하는 문제다. 문제 탐색하기- 문제에서 구해야 하는 최종 정답은 무엇인지 탐색한 과정- 그 정답을 구하기 위해 어떻게 코드를 구현해야 할지 고민한 과정- 문제에 들어오는 범위를 파악하며 어떤 알고리즘을 쓸 수 있을지 고민해 가는 과정ex. 가능한 시간 복잡도, 알고리즘 선택입출력 제한1 ≤ N ≤ 20..