문제 링크 : https://www.acmicpc.net/problem/1700
1700번: 멀티탭 스케줄링
기숙사에서 살고 있는 준규는 한 개의 멀티탭을 이용하고 있다. 준규는 키보드, 헤어드라이기, 핸드폰 충전기, 디지털 카메라 충전기 등 여러 개의 전기용품을 사용하면서 어쩔 수 없이 각종 전
www.acmicpc.net
그리디 알고리즘 문제입니다.
코드
#include <bits/stdc++.h>
using namespace std;
typedef vector<int>::iterator iter;
vector<int> input, P;
int n, k, ct;
int main()
{
cin >> n >> k;
for (int i = 0; i < k; ++i) {
int in;
cin >> in;
input.push_back(in);
}
for (iter it = input.begin(); it != input.end(); ++it) {
if (find(P.begin(), P.end(), *it) != P.end())
continue;
if (P.size() < n) {
P.push_back(*it);
continue;
}
iter last = it, idx = P.begin();
for (iter t = P.begin(); t != P.end(); ++t) {
iter temp = find(it + 1, input.end(), *t);
if (temp > last) {
idx = t;
last = temp;
}
}
*idx = *it;
ct++;
}
cout << ct;
}
이 코드에서
#include <bits/stdc++.h>
가 뭔지 궁금하실 수 있는데 이 헤더는 모든 표준 라이브러리를 포함하는 헤더입니다.
'알고리즘 문제' 카테고리의 다른 글
[알고리즘 문제/C++]백준 1931번 : 회의실 배정 (0) | 2021.01.15 |
---|---|
[알고리즘 문제/C++]백준 1743번 : 음식물 피하기 (0) | 2021.01.10 |
[알고리즘 문제/C++]백준 1463번 : 1로 만들기 (0) | 2021.01.10 |
[알고리즘 문제/C++]백준 1449번 : 수리공 항승 (0) | 2021.01.10 |
[알고리즘 문제/C++]백준 1260번 : DFS와 BFS (0) | 2021.01.10 |