[C++] 프로그래머스 큰 수 만들기 탐욕법
·
Algorithm/Programmers
#include #include using namespace std; string solve(string n, int maxlength); string solution(string number, int k) { string answer = ""; vector nums(10); int maxlength = number.size() - k; //각 수의 각 위치를 넣는다. 여기서 넣은 개수만큼 그 수의 총개수 for (int i = 0; i = 1; i--) { for (int j = 0; j < nums[i].size(); ..
[C++] 프로그래머스 위클리챌린지 8주차 최소직사각형
·
Algorithm/Programmers
#include using namespace std; int solution(vector sizes) { int answer = 0; int w = 0; int h = 0; for(const auto &i : sizes) { w = max(w, max(i[0], i[1])); h = max(h, min(i[0], i[1])); } answer = w * h; return answer; } 풀이 1. 세로가 더 길거나 가로가 더 길거나 이므로 가로를 기준으로 잡았다. 2. 가로와 세로중 큰 값을 가로에 넣어주고, 작은 값은 세로에 넣어준다. 3. 가로중 제일 큰 값과 세로중 제일 큰 값을 곱해준다. https://programmers.co.kr/learn/courses/30/lessons/86491 코딩테..
[C++] 백준 1932 정수 삼각형
·
Algorithm/Baekjoon
#include #include #include using namespace std; void DP(int n, vector& m); int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int n = 0; cin >> n; vector m(n); for (int i = 0; i > temp; m[i].push_back(temp); } } DP(n, m); sort(m[n - 1].begin(), m[n - 1].end()); cout = 2) { m[1][0] += m[0][0]; m[1][1] += m[0][0]; }..
[C++] 백준 2447 별 찍기
·
Algorithm/Baekjoon
#include #include using namespace std; void star(int num, int x, int y, vector& stars); int main() { ios::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int num; cin >> num; vector stars(num); for (int i = 0; i < num; i++) //생성 { for (int j = 0; j < num; j++) stars[i].push_back('*'); } star(num, 0, 0, stars); for (int i = 0; i < num; i++) //출력 { for (int j = 0; j < num; j++) cout
[C++] 프로그래머스 위클리챌린지 7주차 입실퇴실
·
Algorithm/Programmers
#include #include #include using namespace std; vector solution(vector enter, vector leave) { vector answer; int enterNum = 0; //들어올 사람 num int maxEnter = enter.size(); //인원 수 vector entered(maxEnter, false); vector meet(maxEnter); //만난 인원 while (leave.size() != 0) { if (entered[leave[0] - 1] == true) //입실 인원이 존재하면 퇴실 { entered[leave[0] - 1] = false; leave.erase(leave.begin()); } else if (enterN..
[C++] 프로그래머스 위클리챌린지 6주차 복서정렬하기
·
Algorithm/Programmers
#include #include #include using namespace std; struct Whr { float win; //승률 int weightWin; //체급차이 승리 int weights; //무게 int num; //번호 }; bool sortSolve(const Whr& a, const Whr& b); vector solution(vector weights, vector head2head) { vector answer; vector result(weights.size()); //승률과 체급차이로 승리 for (int i = 0; i < head2head.size(); i++) { float win = 0; float lose = 0; result[i].num = i + 1; resul..