Submission #886507

#TimeUsernameProblemLanguageResultExecution timeMemory
886507vjudge1Gym Badges (NOI22_gymbadges)C++17
0 / 100
2075 ms9172 KiB
#include <bits/stdc++.h>
using namespace std;
#define tol(bi) (1ll<<((int)(bi)))
int main(){
	int n;
	cin>>n;
	vector<pair<int,int>> arr(n);
	for (int i = 0; i < n; ++i)
	{
		cin>>arr[i].second;
	}
	for (int i = 0; i < n; ++i)
	{
		cin>>arr[i].first;
	}
	sort(arr.begin(), arr.end());
	int ans = 0;
	for (int i = 0; i < tol(n); i++){
		int crr = 0;
		bool boolean=true;
		for (int j = 0; j < n; j++){
			if (tol(j)&i) continue;
			if (crr>arr[j].first) boolean=false;
			crr+=arr[j].second;
		}
		if (boolean) ans = max(ans,n-__builtin_popcountll(i));
	}
	cout<<ans<<endl;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...