Submission #988227

#TimeUsernameProblemLanguageResultExecution timeMemory
988227TsaganaBank (IZhO14_bank)C++14
0 / 100
148 ms81764 KiB
#include<bits/stdc++.h> #define IOS ios_base::sync_with_stdio(false);cin.tie();cout.tie(); #define all(x) x.begin(), x.end() #define int long long #define pq priority_queue #define lb lower_bound #define ub upper_bound #define pb push_back #define pp pop_back #define F first #define S second using namespace std; void swp(int &a, int &b) { if (a == b) return ; int p = a; b = p; a = b; } bool rep(vector<int> a, vector<int> b) { while (!a.empty() && !a.back()) a.pp(); while (!b.empty() && !b.back()) b.pp(); if (a.empty()) return 1; if (b.empty()) return 0; for (int i = 0; i < b.size(); i++) { if (b[i] > a.back()) continue ; a.back() -= b[i]; swp(b[i], b[b.size()-1]); if (rep(a, b)) return 1; swp(b[i], b[b.size()-1]); a.back() += b[i]; } return 0; } void solve () { vector<int> a, b; int n, m; cin >> n >> m; a.resize(n); b.resize(m); for (int &i: a) cin >> i; for (int &i: b) cin >> i; sort(all(a)); sort(all(b)); while (!b.empty() && b.back() > a.back()) {b.pp();} while (!b.empty() && !a.empty() && b.back() == a.back()) {a.pp(); b.pp();} cout << (rep(a, b) ? "YES" : "NO"); } signed main() { IOS #ifndef LOCAL freopen("bank.in", "r", stdin); freopen("bank.out", "w", stdout); #endif solve(); return 0; }

Compilation message (stderr)

bank.cpp: In function 'bool rep(std::vector<long long int>, std::vector<long long int>)':
bank.cpp:27:20: 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]
   27 |  for (int i = 0; i < b.size(); i++) {
      |                  ~~^~~~~~~~~~
bank.cpp: In function 'int main()':
bank.cpp:57:10: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   57 |   freopen("bank.in", "r", stdin);
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
bank.cpp:58:10: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   58 |   freopen("bank.out", "w", stdout);
      |   ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...