※ 글쓴이는 취미로 코딩을 익혀보는 사람이라 정확하지 않은 내용을 담고 있을 수 있다 ※

 

이번에 볼 문제는 백준 26754번 문제인 Programy이다.
문제는 아래 링크를 확인하자.

https://www.acmicpc.net/problem/26754 

 

26754번: Programy

Bajtazar zmienia właśnie komputer, musi więc przenieść swoje aktualne oprogramowanie ze starego komputera na nowy. Praca jaką wykonuje Bajtazar wymaga od niego szczególnej dbałości o bezpieczeństwo, dlatego wysyłanie programów do chmury czy prz

www.acmicpc.net

용량이 작은 프로그램부터 남은 CD 중 해당 프로그램을 넣을 수 있는 가장 적은 용량의 CD에 담는 그리디 전략으로 문제를 해결할 수 있다.

 

정렬과 투포인터를 적절히 이용해 문제를 해결하자.

 

아래는 제출한 소스코드이다.

#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;

int N, M;
int arrN[1000000];
int arrM[1000000];
int idxN, idxM;
int ans;

int main() {
	ios::sync_with_stdio(0);
	cin.tie(0);

	cin >> N;
	for (int i = 0; i < N; i++) cin >> arrN[i];
	cin >> M;
	for (int i = 0; i < M; i++) cin >> arrM[i];

	sort(arrN, arrN + N);
	sort(arrM, arrM + M);

	while (idxN < N && idxM < M) {
		if (arrN[idxN] <= arrM[idxM]) ans++, idxN++, idxM++;
		else idxM++;
	}

	cout << ans;
}
728x90

'BOJ' 카테고리의 다른 글

[BOJ 26752 // C++] Zegarek  (0) 2022.12.25
[BOJ 26753 // C++] OIJ  (0) 2022.12.25
[BOJ 26768 // C++] H4x0r  (0) 2022.12.25
[BOJ 26738 // C++] Lizak  (0) 2022.12.24
[BOJ 17266 // C++] 어두운 굴다리  (1) 2022.12.24

+ Recent posts