c++
-
백준 3058번: 짝수를 찾아라구현(Implementation) 2018. 8. 31. 14:59
https://www.acmicpc.net/problem/3058 1. 문제 2. 알고리즘키워드 - 구현 3. 코드 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748#include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; #define MAX_SIZE 100#define INF 0x7fffffff#define CENDL "\n"#define ll long long #define c_reverse(..
-
Level 3 > 멀리 뛰기프로그래머스(Programmers) 2018. 8. 22. 13:57
https://programmers.co.kr/learn/courses/30/lessons/12914 코딩테스트 연습 - 멀리 뛰기 | 프로그래머스 효진이는 멀리 뛰기를 연습하고 있습니다. 효진이는 한번에 1칸, 또는 2칸을 뛸 수 있습니다. 칸이 총 4개 있을 때, 효진이는 (1칸, 1칸, 1칸, 1칸) (1칸, 2칸, 1칸) (1칸, 1칸, 2칸) (2칸, 1칸, 1칸) (2칸, 2칸) 의 5가지 방법으로 맨 끝 칸에 도달할 수 있습니다. 멀리뛰기에 사용될 칸의 수 n이 주어질 때, 효진이가 끝에 도달하는 방법이 몇 가지인지 알아내, 여기에 1234567를 나눈 나머지를 리턴하는 함수, solut programmers.co.kr 알고리즘 키워드 - 피보나치, 다이나믹프로그래밍 코드 #include #..
-
Level 3 > 가장 긴 팰린드롬프로그래머스(Programmers) 2018. 8. 22. 13:22
https://programmers.co.kr/learn/courses/30/lessons/12904?language=cpp 1. 문제주어진 문자열에서 가장 긴 펠린드롬 문자열을 찾는 문제 2. 알고리즘키워드 - 문자열, 브루트포스 3. 코드 123456789101112131415161718192021222324252627#include #include #include using namespace std;int solution(string s){ int answer = 0; int length = s.length(); for(int i=0;ianswer; subLength--) { int left = i; int right = left+subLength - 1; while(left= right && an..
-
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