본문 바로가기

프로그래머스 문제풀이/LEVEL 2

(49)
[C++] 프로그래머스 문제풀이 LEVEL 2 우박수열 정적분 https://school.programmers.co.kr/learn/courses/30/lessons/134239 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include using namespace std; vector solution(int k, vector ranges) { vector answer; vector areas; double sum = 0.0; double area; int x = 0, y = k; areas.push_back(0.0); while(y != 1) { int pre = y; if (y..
[C++] 프로그래머스 문제풀이 LEVEL 2 리코쳇 로봇 https://school.programmers.co.kr/learn/courses/30/lessons/169199 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include using namespace std; std::pair move(std::vector & board, int y, int x, int dir){ const int dy[] = {-1, 1, 0, 0}; const int dx[] = {0, 0, -1, 1}; while(y >= 0 && y = 0 && x < board[y].size() &&..
[C++] 프로그래머스 문제풀이 LEVEL 2 디펜스 게임 https://school.programmers.co.kr/learn/courses/30/lessons/142085 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include using namespace std; int solution(int n, int k, vector enemy) { int answer = 0; int idx = 0; priority_queue pq; while(idx < enemy.size()) { if(n < enemy[idx] && k
[C++] 프로그래머스 문제풀이 LEVEL 2 마법의 엘리베이터 https://school.programmers.co.kr/learn/courses/30/lessons/148653 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include using namespace std; int solution(int storey) { int answer = 0; while (storey != 0){ int n = storey % 10; if (n >= 6 || (n == 5 && (storey / 10) % 10 >= 5)){ storey += 10 - n; // carry 변수 대신 올림을 표현 answer..
[C++] 프로그래머스 문제풀이 LEVEL 2 호텔 대실 https://school.programmers.co.kr/learn/courses/30/lessons/155651 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include #include using namespace std; struct Time{ int start, end; }; bool cmp (Time & lhs, Time & rhs){ if (lhs.start == rhs.start){ return lhs.end < rhs.end; } return lhs.start < rhs.start; } std::vect..
[C++] 프로그래머스 문제풀이 LEVEL 2 배달 https://school.programmers.co.kr/learn/courses/30/lessons/12978?language=cpp 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include using namespace std; int solution(int N, vector road, int K) { const int INF = 1000000000; int answer = 0; std::vector graph(N + 1, std::vector(N + 1, 0)); for (int i = 0; i < graph.size(); ++i) { for ..
[C++] 프로그래머스 문제풀이 LEVEL 2 전력망을 둘로 나누기 https://school.programmers.co.kr/learn/courses/30/lessons/86971 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include /* DFS, BFS, 트리의 특성으로 풀기 */ int solution(int n, std::vector wires) { int answer = 100; std::vector graph(n + 1); std::vector visit(n + 1, false); for (int i = 0; i < wires.size(); ++i) { int v1 = wires[i][0]; int v..
[C++] 프로그래머스 문제풀이 LEVEL 2 무인도 여행 https://school.programmers.co.kr/learn/courses/30/lessons/154540 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr #include #include #include #include #include using namespace std; vector answer; bool check[101][101]; int dx[] = {0,0,-1,1}; int dy[] = {-1,1,0,0}; void bfs(vector maps, int k, int j) { queue q; q.push({k,j}); check[k][j]..