Submission #1098209

#TimeUsernameProblemLanguageResultExecution timeMemory
1098209vjudge1Bank (IZhO14_bank)C++17
0 / 100
1025 ms144872 KiB
#include<bits/stdc++.h> #define pb push_back #define int long long #define S second #define F first #define ahah ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0); using namespace std; const int N=1e6+7; const int MOD=1e9+7; int a[N],b[N]; bool used[N]; signed main() { ahah int n,m; cin >> n >> m; for(int i = 1 ; i <= n ; i++){ cin >> a[i]; } for(int i = 1 ; i <= m ; i++){ cin >> b[i]; } sort(a+1,a+1+n); sort(b+1,b+1+m); map<int,int>number; map<int,map<int,vector<int> > >mp; for(int i = 0 ; i < (1 << m) ; i++){ vector<int>vc; for(int j = 0 ; j < m ; j++){ if(i&(1 << j)){ vc.pb(j+1); } } int cnt=0; for(int j = 0 ; j < vc.size() ; j++){ cnt+=b[vc[j]]; } number[cnt]++; for(int j = 0 ; j < vc.size() ; j++){ mp[cnt][number[cnt]].pb(b[vc[j]]); } } for(int uk=1 ; uk <= n ; uk++){ int to=a[uk]; bool complete=false; for(int i = 1 ; i <= number[to] ; i++){ bool check=false; for(int j = 0 ; j < mp[to][i].size() ; j++ ){ int x=mp[to][i][j]; if(used[x]){ check=true; break; } } if(check){ continue; }else{ for(int j = 0 ; j < mp[to][i].size() ; j++){ int x=mp[to][i][j]; used[x]=true; } complete=true; break; } } if(!complete){ cout << "NO"; return 0; } } cout << "YES"; }

Compilation message (stderr)

bank.cpp: In function 'int main()':
bank.cpp:37:21: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   37 |   for(int j = 0 ; j < vc.size() ; j++){
      |                   ~~^~~~~~~~~~~
bank.cpp:41:21: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   41 |   for(int j = 0 ; j < vc.size() ; j++){
      |                   ~~^~~~~~~~~~~
bank.cpp:50:22: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   50 |    for(int j = 0 ; j < mp[to][i].size() ; j++ ){
      |                    ~~^~~~~~~~~~~~~~~~~~
bank.cpp:60:23: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::vector<long long int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   60 |     for(int j = 0 ; j < mp[to][i].size() ; j++){
      |                     ~~^~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...