남민우의 공부 블로그

고정 헤더 영역

글 제목

메뉴 레이어

남민우의 공부 블로그

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (102)
    • 내일배움캠프 학습 (51)
      • HTML (7)
      • SQL (10)
      • JavaScript (13)
      • Node.Js (8)
      • 진행 프로젝트 (10)
      • 네트워크 (2)
      • TCP Echo Server (1)
    • 유니티 학습 (17)
      • 세미나 자료 (17)
    • 언리얼 학습 (0)
    • 게임 이야기 (1)
      • 로스트 아크(Lost Ark) (1)
    • 프로그래밍 및 언어 (28)
      • 코딩 테스트 문제 (17)
      • 자료구조 학습 (11)
    • 개인 일상 (2)

검색 레이어

남민우의 공부 블로그

검색 영역

컨텐츠 검색

c++

  • [C++] 파괴되지 않은 건물 - 프로그래머스

    2025.10.22 by 남민우_

  • [C++] 요격 시스템 - 프로그래머스

    2025.10.22 by 남민우_

  • [C++] 타겟 넘버 - 프로그래머스

    2025.10.02 by 남민우_

  • [C++] 숫자 카드 - 백준#10815번

    2025.05.05 by 남민우_

  • [C++] 이진 검색 트리 - 백준#5639번

    2025.05.04 by 남민우_

  • [C++] 인구 이동 - 백준#16234번

    2025.04.25 by 남민우_

  • [C++] 연속 부분 수열 합의 개수 - 프로그래머스

    2024.12.23 by 남민우_

  • [C++] 달리기 경주 - 프로그래머스

    2024.12.10 by 남민우_

[C++] 파괴되지 않은 건물 - 프로그래머스

문제제한 사항입출력 예시 풀이int solution(vector> board, vector> skill){ vector> diff(board.size()+1, vector(board[0].size() +1, 0)); // 누적합 연산 for (const vector& cnt : skill) { int type = cnt[0]; int r1 = cnt[1]; int c1 = cnt[2]; int r2 = cnt[3]; int c2 = cnt[4]; int degree = cnt[5]; long long d = (type == 1) ? -(long long)degree : (long long)degr..

카테고리 없음 2025. 10. 22. 13:49

[C++] 요격 시스템 - 프로그래머스

문제제한 사항입출력 예시 및 설명 풀이#include // a 와 b 의 end 오름차순 비교bool compare(const vector& a, const vector& b){ return a.back() > targets) { int answer = 0; // 구간 별 end 기준으로 오름차순 정렬 sort(targets.begin(), targets.end(), compare); // 첫 요격의 끝점을 last로 지정 // 다음 구간의 start가 이전 last보다 작으면 같은 요격으로 처리 // 크면 새 요격으로 처리, answer +1, last 교체 int last = INT_MIN; for (const vector& target : target..

카테고리 없음 2025. 10. 22. 12:40

[C++] 타겟 넘버 - 프로그래머스

문제제한 사항입출력 예시 및 설명풀이#include using namespace std;int answer = 0;void method(const vector& numbers, int i, int sum, const int& target){ if (i == numbers.size()) { if (sum == target) answer++; return; } method(numbers, i + 1, sum + numbers[i], target); method(numbers, i + 1, sum - numbers[i], target);}int solution(vector numbers, int target) { method(numb..

카테고리 없음 2025. 10. 2. 19:06

[C++] 숫자 카드 - 백준#10815번

문제입력 예시56 3 2 10 -10810 9 -5 2 3 4 5 -10출력 예시1 0 0 1 1 0 0 1풀이#include #include #include using namespace std;void Func(vector& card, vector& search){ for (int x : search) { if (find(card.begin(), card.end(), x) == card.end()) cout cardNum, searchNum; cin >> n; for (int i = 0; i > num; cardNum.push_back(num); } cin >> m; for (int i = 0; i > num; searchNum.push_back(num); } Func(cardNum, sea..

프로그래밍 및 언어/코딩 테스트 문제 2025. 5. 5. 00:03

[C++] 이진 검색 트리 - 백준#5639번

문제 입출력입력 예시50302452845985260출력 예시52824453060529850 풀이#include #include using namespace std;vector tree;void ReturnTree(int start, int end){ if (start >= end) return; // 더 이상 노드가 없을 경우 if (start == end - 1) // 노드가 1개 남았을 경우 { cout > x) { if (x == 0) break; else tree.push_back(x); } ReturnTree(0, tree.size()); return 0;} 설명분할 정복 과정과 재귀를 사용하여 문제를 해결한다. 문제에도 나와있듯, 이 이진 트리는 항상 만족하는 기준이 있는데왼쪽 노드는..

프로그래밍 및 언어/코딩 테스트 문제 2025. 5. 4. 00:26

[C++] 인구 이동 - 백준#16234번

문제예시 풀이#include #include #include using namespace std;int N, L, R;int country[100][100];bool isVisited[100][100] = {false};bool isCanMove = true;int dx[] = {-1, 1, 0, 0};int dy[] = { 0, 0, -1, 1 };void BFS(int x, int y){ if (isVisited[x][y]) return; isVisited[x][y] = true; queue> q; queue> checkq; q.push(make_pair(x, y)); checkq.push(make_pair(x, y)); int peopleSum = 0; peopleSum += country[x][y..

프로그래밍 및 언어/코딩 테스트 문제 2025. 4. 25. 00:59

[C++] 연속 부분 수열 합의 개수 - 프로그래머스

문제제한 사항예시풀이#include #include int solution(vector elements) { vector summary; for (int i = 0; i  문제의 핵심이라고 파악한 두가지는1. 최대 인덱스를 넘겨도 다시 처음부터 인덱스를 카운트하는 원형 배열의 합 구하기2. 중복 제거이렇게 였다. 먼저 예시를 보면 알 수 있듯이 연속 부분 수열의 합을 구하는 가짓수는 길이가 1부터 elements 전체까지, 총 element.size()만큼 반복되어 이를 for문을 이용해 돌린다.길이가 1인 경우, 길이가 2인 경우 ... 를 따지게 된 것이고, 이 안에서 다시 합의 경우의 수를 구해야하므로 이중 for문을 사용해주었다. int index = j % elements.size()..

프로그래밍 및 언어/코딩 테스트 문제 2024. 12. 23. 10:47

[C++] 달리기 경주 - 프로그래머스

문제제한 사항예시  풀이#include #include #include using namespace std;vector solution(vector players, vector callings){ vector answer; unordered_map playersIndex; for (int i = 0; i  이 문제의 핵심은 'swap' 이다. 달리기 경주를 생각해보면 3등이 2등을 제친다면 3등만 순위가 오르는 것이 아니라 오른 만큼 제쳐진 사람, 2등의 순위도 뒤로 밀린다. 따라서 3등과 2등의 위치를 바꾸는 과정이 주요할 것이다. 따라서 풀이 초기엔 다음과 같이 작성했었다.vector solution(vector players, vector callings){ vector ans..

프로그래밍 및 언어/코딩 테스트 문제 2024. 12. 10. 20:21

추가 정보

인기글

최신글

페이징

이전
1
다음
TISTORY
남민우의 공부 블로그 © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바