프로그래머스
-
Level 2 > JadenCase프로그래머스(Programmers) 2018. 8. 22. 13:19
https://programmers.co.kr/learn/courses/30/lessons/12951 1. 문제문장에 첫 글자를 대문자 나머지는 소문자로 변환하는 문제 2. 알고리즘키워드 - 문자열 3. 코드 1234567891011#include #include using namespace std; string solution(string s) { s.at(0) = toupper(s.at(0)); for (int i = 1; i
-
Level 3 > 2 x n 타일링프로그래머스(Programmers) 2018. 8. 20. 09:31
https://programmers.co.kr/learn/courses/30/lessons/12900 1. 문제 2. 알고리즘키워드 - DP * 문제 접근 N 이 1 일때 = 1N 이 2 일때 = 2N 이 3 일때 = 1+2N 이 4 일때 = 1 + 2 + 2 DP[1] = 1;DP[2] = 2;DP[3] = DP[2] + DP[1];DP[4] = DP[3] + DP[2];DP[5] = DP[4] + DP[3]; 키포인트하지만 만약 답이 123456789라면 56789만 반환해주면 됩니다. 리턴하는 숫자의 앞자리가 0일 경우 0을 제외한 숫자를 리턴하세요. 경우의 수가 많기 때문에 해를 구하고 % 로 연산자로 절단이 필요 하다.123456789 % 100000 = 56789 3. 코드 1234567891..
-
DrawRect프로그래머스(Programmers) 2018. 8. 20. 09:27
1. 문제 문제 설명 직사각형을 만드는 데 필요한 4개의 점 중 3개의 좌표가 주어질 때, 나머지 한 점의 좌표를 구하려고 합니다. 점 3개의 좌표가 들어있는 배열 v가 매개변수로 주어질 때, 직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 return 하도록 solution 함수를 완성해주세요. 단, 직사각형의 각 변은 x축, y축에 평행하며, 반드시 직사각형을 만들 수 있는 경우만 입력으로 주어집니다. 제한사항 v는 세 점의 좌표가 들어있는 2차원 배열입니다.v의 각 원소는 점의 좌표를 나타내며, 좌표는 [x축 좌표, y축 좌표] 순으로 주어집니다.좌표값은 1 이상 10억 이하의 자연수입니다.직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 [x축 좌표, y축 좌표] 순으로 담아 return 해..
-
가장 큰 정사각형 찾기프로그래머스(Programmers) 2018. 8. 20. 09:25
1. 문제 문제 설명 1와 0로 채워진 표(board)가 있습니다. 표 1칸은 1 x 1 의 정사각형으로 이루어져 있습니다. 표에서 1로 이루어진 가장 큰 정사각형을 찾아 넓이를 return 하는 solution 함수를 완성해 주세요. (단, 정사각형이란 축에 평행한 정사각형을 말합니다.) 예를 들어 1234 0111 1111 1111 0010 가 있다면 가장 큰 정사각형은 1234 0111 1111 1111 0010 가 되며 넓이는 9가 되므로 9를 반환해 주면 됩니다. 제한사항 표(board)는 2차원 배열로 주어집니다. 표(board)의 행(row)의 크기 : 1000 이하의 자연수 표(board)의 열(column)의 크기 : 1000 이하의 자연수 표(board)의 값은 1또는 0으로만 이루어져..
-
Level 1 > 자릿수 더하기프로그래머스(Programmers) 2018. 8. 20. 09:22
https://programmers.co.kr/learn/courses/30/lessons/12931 1. 문제 2. 알고리즘키워드 - 구현 3. 코드 1234567891011121314#include using namespace std;int solution(int n){ int answer = 0; while(n) { int cand = n % 10; answer += cand; n = n / 10; } return answer;}cs
-
나머지 한 점프로그래머스(Programmers) 2018. 8. 20. 09:21
1. 문제 직사각형을 만드는 데 필요한 4개의 점 중 3개의 좌표가 주어질 때, 나머지 한 점의 좌표를 구하려고 합니다. 점 3개의 좌표가 들어있는 배열 v가 매개변수로 주어질 때, 직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 return 하도록 solution 함수를 완성해주세요. 단, 직사각형의 각 변은 x축, y축에 평행하며, 반드시 직사각형을 만들 수 있는 경우만 입력으로 주어집니다. 제한사항 v는 세 점의 좌표가 들어있는 2차원 배열입니다.v의 각 원소는 점의 좌표를 나타내며, 좌표는 [x축 좌표, y축 좌표] 순으로 주어집니다.좌표값은 1 이상 10억 이하의 자연수입니다.직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 [x축 좌표, y축 좌표] 순으로 담아 return 해주세요. 입..
-
순열 검사프로그래머스(Programmers) 2018. 8. 20. 09:19
1. 문제 길이가 n인 배열에 1부터 n까지 숫자가 중복 없이 한 번씩 들어 있는지를 확인하려고 합니다.1부터 n까지 숫자가 중복 없이 한 번씩 들어 있는 경우 true를, 아닌 경우 false를 반환하도록 함수 solution을 완성해주세요. 제한사항배열의 길이는 10만 이하입니다.배열의 원소는 10만 이하의 자연수입니다. 입출력 예arrresult[4, 1, 3, 2]true[4, 1, 3]false 입출력 예 설명 입출력 예 #1입력이 [4, 1, 3, 2]가 주어진 경우, 배열의 길이가 4이므로 배열에는 1부터 4까지 숫자가 모두 들어 있어야 합니다. [4, 1, 3, 2]에는 1부터 4까지의 숫자가 모두 들어 있으므로 true를 반환하면 됩니다. 입출력 예 #2[4, 1, 3]이 주어진 경우, ..
-
Level 2 > 땅따먹기프로그래머스(Programmers) 2018. 8. 20. 09:15
https://programmers.co.kr/learn/courses/30/lessons/12913 1. 문제 2. 알고리즘키워드 - 다이나믹 프로그래밍 3. 코드 1234567891011121314151617181920212223242526#include #include using namespace std; int solution(vector land){ int sol = 0; int r = land.size(); for (int i = 0; i