분류 전체보기302 프로그래머스 : 소수 찾기(lv2) C++ 프로그래머스 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42839 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 설명 한자리 숫자가 적힌 종이 조각이 흩어져있습니다. 흩어진 종이 조각을 붙여 소수를 몇 개 만들 수 있는지 알아내려 합니다. 각 종이 조각에 적힌 숫자가 적힌 문자열 numbers가 주어졌을 때, 종이 조각으로 만들 수 있는 소수가 몇 개인지 return 하도록 solution 함수를 완성해주세요. 제한사항 numbers는 길이 1 이상 7 이하인 문자열입니다. numbe.. 프로그래머스/lv2 2022. 11. 5. 객체 초기화 객체 초기화 순서 기본 클래스는 파생 클래스보다 먼저 초기화된다. 클래스 데이터 멤버는 그들이 선언된 순서대로 초기화된다. 1번 항목 예시 '기본 클래스 Widget이 있고 파생클래스 Child가 있다고 가정' ▼ ▼ 위의 사진과 같이 기본 클래스를 먼저 초기화 이후 파생클래스가 초기화 된다. 2번 항목 예시 h 구성 Widget.h class CWidget { public: CWidget(); ~CWidget(); private: int Test1; int Test2; int Test3; int Test4; int Test5; } cpp 구성 widget.cpp #include "Widget.h" CWidget::CWidget(): Test1(5), Test5(5), Test2(5), Test4(5),.. Effective C++ (개인 공부) 2022. 11. 4. 프로그래머스 : 모의고사(lv1) C++ 프로그래머스 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42840 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include using namespace std; // 정답의 반복을 벡터로 구성 vector Person1 = { 1, 2, 3, 4, 5 }; vector Person2 = { 2, 1, 2, 3, 2, 4, 2, 5 }; vector Person3 = { 3, 3, 1, 1, 2, 2, 4, 4, 5, 5 }; // 수포자의 정답 개수를 .. 프로그래머스/lv1 2022. 11. 4. 프로그래머스 : 최소직사각형(lv1) C++ 프로그래머스 링크 https://school.programmers.co.kr/learn/courses/30/lessons/86491 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include using namespace std; int solution(vector sizes) { int answer = 0; size_t Size = sizes.size(); int Width = 0; int Height = 0; for(size_t i = 0; i < Size; ++i) { // 큰값을 전부 0번인덱스로 옮겨준다 // 즉 0번인덱스 값이.. 프로그래머스/lv1 2022. 11. 4. 이분 탐색 이분 탐색이란? - 정렬된 배열에서 원하는 값의 존재 여부를 찾는 알고리즘. - 반드시 배열을 정렬해서 사용해야 한다는 단점이 있다. - 탐색할 때마다 검사 범위가 절반으로 줄어든다. 시간복잡도 : O(log N) 탐색 방식 - 전체 배열의 중간 요소를 찾고자 하는 키로 시작합니다. - 찾고자 하는 키의 값이 항목과 같으면 찾고자 하는 키의 인덱스를 반환합니다. - 또는 찾고자 하는키의 값이 Mid보다 작으면 End = Mid - 1으로 좁힙니다. - 그렇지 않으면 Start = Mid + 1으로 좁힙니다. - 두 번째 지점부터 값을 찾거나 간격이 비어 있을 때까지 반복적으로 확인합니다. 출처 : https://www.geeksforgeeks.org/binary-search/ Binary Search -.. c++/자료구조 간단 이론 2022. 11. 3. 프로그래머스 : 입국심사(lv3) C++ 프로그래머스 링크 https://school.programmers.co.kr/learn/courses/30/lessons/43238 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include using namespace std; long long solution(int n, vector times) { long long answer = 0; // 호춘쿠키님의 글을 보고 적고 공부내용임 // 주석 걸린내용 대부분 호춘쿠키님의 주석내용(이해가기 쉽게 주석 완벽히 달아놓으셔서 그대로 작성하였고 // 두 가지 부분만 다르게 생.. 프로그래머스/lv3 2022. 11. 3. 간단한 queue 구현 template class MyQueue { public: MyQueue() : Dat{}, Head(0), Tail(0) { } private: T Dat[10000]; int Head; int Tail; public: void push(int x) { Dat[Tail++] = x; } void pop() { Head++; } int front() { return Dat[Head]; } int back() { return Dat[Tail - 1]; } int size() { return Tail - Head; } bool empty() { if (Tail - Head == 0) { return true; } return false; } }; void test() { MyQueue Q; Q.push(10.. 간단 자료구조 2022. 11. 3. 프로그래머스 : 가장 큰 수(lv2) C++ 프로그래머스 링크 https://school.programmers.co.kr/learn/courses/30/lessons/42746 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include using namespace std; bool Function(const string& a, const string& b) { return a + b > b + a; } string solution(vector numbers) { string answer = ""; vector vecString; size_t Size = numbe.. 프로그래머스/lv2 2022. 10. 20. 프로그래머스 : 영어 끝말잇기(lv2) C++ 프로그래머스 링크 https://school.programmers.co.kr/learn/courses/30/lessons/12981 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include #include #include using namespace std; vector solution(int n, vector words) { vector answer; unordered_map mapIsSaved; size_t Size = words.size(); mapIsSaved.insert(make_pair(words[0], t.. 프로그래머스/lv2 2022. 10. 19. 프로그래머스 : 카카오프렌즈 컬러링북 (lv2) C++ 프로그래머스 링크 https://school.programmers.co.kr/learn/courses/30/lessons/1829 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include using namespace std; // 전역 변수를 정의할 경우 함수 내에 초기화 코드를 꼭 작성해주세요. vector solution(int m, int n, vector picture) { int AreaCount = 0; int MaxSize = 0; // 어디로 이동할지 순차적으로 정해줄 녀석 int dx[4] = {1, 0, -1, 0}.. 프로그래머스/lv2 2022. 10. 6. 프로그래머스 : k진수에서 소수 개수 구하기 (lv2) C++ #include #include #include #include using namespace std; int solution(int n, int k) { int answer = 0; // 스트링을 이용해서 k진수로 변환 string Convert = ""; while (n > 0) { Convert += to_string(n % k); n /= k; } reverse(Convert.begin(), Convert.end()); string AddString = ""; for (char Text : Convert) { if (Text == '0') { if (!AddString.empty()) { long long LNumber = stoll(AddString); bool Enable = true; if(L.. 프로그래머스/lv2 2022. 10. 6. 프로그래머스 : 괄호 회전하기 (lv2) C++ #include #include #include using namespace std; int solution(string s) { int answer = 0; size_t StringSize = s.size(); while(StringSize - 1 > 0) { stack sSave; for(size_t i = 0; i < s.size(); ++i) { if(s[0] == ')' || s[0] == '}' || s[0] == ']') { sSave.push(s[i]); break; } if(sSave.empty()) { sSave.push(s[i]); continue; } else { char Top = sSave.top(); if(Top == '(' && s[i] == ')') { sSave.pop().. 프로그래머스/lv2 2022. 10. 6. 이전 1 ··· 14 15 16 17 18 19 20 ··· 26 다음