Submission #1311989

#TimeUsernameProblemLanguageResultExecution timeMemory
1311989LM1Bank (IZhO14_bank)C++20
0 / 100
1095 ms572 KiB
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define pii pair<int,int>
#define ff first
#define ss second
#define pb push_back
#define vi vector<int>
#define fr(i,ii,iii) for(int i=ii;i<iii;i++)
const int N=21,M=1002;
int n,m,a[N],b[N],c[N],d[N];
bool ok;
void check(){
	fr(i,1,m+1){
		d[c[i]]+=b[i];
	}
	bool c=1;
	fr(i,1,n+1){
		if(d[i]!=a[i])c=0;
	}
	if(c)ok=1;
}
void rec(int x){
	if(x==n+1){
		check();
		return;
	}
	fr(i,1,m+1){
		rec(x+1);
		c[x]=i;
		rec(x+1);
	}
}
int main(){
	ios_base::sync_with_stdio(false);cin.tie(NULL);
	cin>>n>>m;
	fr(i,1,n+1)cin>>a[i];
	fr(i,1,m+1)cin>>b[i];
	rec(1);
	cout<<(ok?"YES":"NO");
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...