본문 바로가기

분류 전체보기137

백준 14889 C++ https://www.acmicpc.net/problem/14889이 문제에서 고민한 점은 어떻게 2개의 팀으로 나눌것인가만 해결하면 된다고 생각했다.처음에 팀 조합을 만들어야하니 Bit masking도 생각을 했었다가 재귀로 더 쉽게 할 수 있을거 같아서 폐기했다.물론 비트마스킹으로도 비트가 켜져있는게 몇개인지로 변경한다면 충분히 해결할 수 있을 것으로 생각되긴한다.N  #include using namespace std;int n; //n > v(21);int diff(string a, string b){ int asum = 0, bsum = 0; //aTeam for (int i = 0; i n) return; if (a.size() > n / 2 || b.size() > n / 2) retur.. 2024. 7. 10.
백준 1931 C++ https://www.acmicpc.net/problem/1931이 문제는 약간의 생각이 필요하다.문제를 읽어보면 결국 끝나는 시간이 빨라야 회의의 갯수를 늘릴 수 있다.그렇기에 vector를 끝나는 시간이 작은 순으로 먼저 정렬시키면 간단하게 문제를 해결할 수 있다.#include using namespace std;/** 1개의 회의실 / n개의 회의* 시작시간과 끝나는 시간이 주어진다.* 회의를 할 수 있는 최대 갯수를 구하라.*/int n, result = 0, endTime = 0;vector>v;int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> n; int a, b; //a - 시작시간 , b끝나는 시간. f.. 2024. 7. 1.
백준 14469 C++ https://www.acmicpc.net/problem/14469이 문제도 글이 길어서 그렇지 결론은 쉽다.sort 밑에 있는 for문만 생각할 수 있다면 금방 풀 수 있다.다음 요소의 도착시간과 이전에 입장완료한 시간을 비교만 해준다면 간단하게 풀 수 있다.#include using namespace std;typedef long long ll;//농장 방문을 위한 문은 1개밖에 없다.//줄을 서서 들어가야한다 like 공항 줄//n마리의 소가 들어가려고 한다. - 방문에 필요한 시간은 소마다 다르다.//예를 들어, 한 소가 5초에 도착했고 7초 동안 검문을 받으면, 8초에 도착한 그 다음 소는 12초까지 줄을 서야 검문을 받을 수 있다.int n; //소의 수vector> v; //int - .. 2024. 6. 30.
백준 1781 C++ https://www.acmicpc.net/problem/1781이 문제의 중요한 생각도 가장 큰 날짜에서 날짜를 하나씩 줄여가며 처리할 수 있는 문제를 뽑으면 된다.그렇게 어렵게 느껴지진 않았다. #include using namespace std;typedef long long ll;ll result;int n; //문제 수vector> v; //데드라인, 컵라면 수 -> 데드라인은 N이하의 자연수이다.priority_queue pq; //cup이 큰 순으로 들어갈 pq이다.priority_queue> dcpq;int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> n; int d, c; //deadline, cup .. 2024. 6. 27.