문제 과 같이 정사각형 모양의 지도가 있다. 1은 집이 있는 곳을, 0은 집이 없는 곳을 나타낸다. 철수는 이 지도를 가지고 연결된 집의 모임인 단지를 정의하고, 단지에 번호를 붙이려 한다. 여기서 연결되었다는 것은 어떤 집이 좌우, 혹은 아래위로 다른 집이 있는 경우를 말한다. 대각선상에 집이 있는 경우는 연결된 것이 아니다. 는 을 단지별로 번호를 붙인 것이다. 지도를 입력하여 단지수를 출력하고, 각 단지에 속하는 집의 수를 오름차순으로 정렬하여 출력하는 프로그램을 작성하시오. 입력 첫 번째 줄에는 지도의 크기 N (정사각형이므로 가로와 세로의 크기는 같으며 5≤N≤25)이 입력되고 그 다음 N줄에는 각각 N개의 자료(0혹은 1)가 입력된다. 출력 첫 번째 줄에는 총 단지수를 출력하시오. 그리고 각 ..
3 x n 의 직사각형에 2 x 1 짜리 타일을 채우는 방법의 개수를 구하는 문제입니다 문제 가로 길이가 2이고 세로의 길이가 1인 직사각형 모양의 타일이 있습니다. 이 직사각형 타일을 이용하여 세로의 길이가 3이고 가로의 길이가 n인 바닥을 가득 채우려고 합니다. 타일을 채울 때는 다음과 같이 2가지 방법이 있습니다 타일을 가로로 배치 하는 경우 타일을 세로로 배치 하는 경우 예를들어서 n이 8인 직사각형은 다음과 같이 채울 수 있습니다. 제한사항 가로의 길이 n은 5,000이하의 자연수 입니다 경우의 수가 많아 질 수 있으므로, 경우의 수를 1,000,000,007으로 나눈 나머지를 return해주세요 입출력 예시 n result 4 11 6 41 입출력 예 #1 다음과 같이 11가지 방법이 있다 S..
입력받은 숫자를 통해 점의 개수를 출력하는 문제입니다 https://school.programmers.co.kr/learn/courses/30/lessons/140107 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 좌표평면을 좋아하는 진수는 x축과 y축이 직교하는 2차원 좌표평면에 점을 찍으면서 놀고 있습니다. 진수는 두 양의 정수 k, d가 주어질 때 다음과 같이 점을 찍으려 합니다. 원점(0, 0)으로부터 x축 방향으로 a*k(a = 0, 1, 2, 3 ...), y축 방향으로 b*k(b = 0, 1, 2, 3 ...)만큼 떨어진 위치에 점을 ..
약수의 합을 구하는 함수를 만드는 문제입니다 문제 설명 정수 n을 입력받아 n의 약수를 모두 더한 값을 리턴하는 함수 solution을 완성해주세요 제한 사항 n은 0 이상 3000 이하인 정수입니다 입출력 예시 입력 출력 12 26 5 6 0 0 입출력 예 #1 12의 약수는 1,2,3,4,6,12입니다 → 이를 모두 더하면 28입니다 입출력 예 #2 5의 약수는 1,5입니다 → 이를 모두 더하면 6입니다 입출력 예 #3 0의 약수는 없습니다→ 따라서 값은 0이 출력됩니다 Solution #include using namespace std; int solution(int n) { int answer = 0; if(n==0) return answer; // 입력이 0일 경우 바로 return else{ ..
문제 설명 임의의 정수 n이 있을때, n의 약수의 개수로 n을 나눌 수 있을 경우 이를 되 나눔수 라고 한다 예를 들어 1(1개), 12(6개), 9(3개)의 경우 되 나눔이 가능하지만 7(2개), 16(5개)의 경우 되 나눔이 되지 않는다 숫자 a, b (1≤a≤b≤1000000)(b-a≤1000)이 입력되었을 경우, a,b를 포함하여 a부터 b 사이에 있는 수 중 되 나눔 수의 개수를 구하는 프로그램을 작성하고자 한다 입력 첫째 줄에 검사하고자 하는 총 경우의 수 T (1≤T≤50)가 주어진다 이어지는 T 줄 각각엔 두 정수 a, b가 하나의 공백으로 구분되어 주어진다 출력 검사하는 각 경우에 대해 a부터 b 사이에 있는 수 중 되 나눔 수의 개수를 출력하라 실행 예시 입력 6 1 2 1 200 90..
문제 N×M크기의 배열로 표현되는 미로가 있다. 미로에서 1은 이동할 수 있는 칸을 나타내고, 0은 이동할 수 없는 칸을 나타낸다. 이러한 미로가 주어졌을 때, (1, 1)에서 출발하여 (N, M)의 위치로 이동할 때 지나야 하는 최소의 칸 수를 구하는 프로그램을 작성하시오. 한 칸에서 다른 칸으로 이동할 때, 서로 인접한 칸으로만 이동할 수 있다. 위의 예에서는 15칸을 지나야 (N, M)의 위치로 이동할 수 있다. 칸을 셀 때에는 시작 위치와 도착 위치도 포함한다. 입력 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. 출력 첫째 줄에 지나야 하는 최소의 칸 수를 출력한다. 항상 도착위치로..