結果
問題 | No.1015 おつりは要らないです |
ユーザー |
![]() |
提出日時 | 2020-04-03 22:58:41 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 26 ms / 2,000 ms |
コード長 | 1,623 bytes |
コンパイル時間 | 884 ms |
コンパイル使用メモリ | 100,928 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-11-17 23:14:30 |
合計ジャッジ時間 | 2,535 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 33 |
ソースコード
#include <iostream> #include <string> #include <vector> #include <deque> #include <queue> #include <algorithm> #include <set> #include <map> #include <bitset> #include <cmath> #include <functional> #include <iomanip> #define vll vector<ll> #define vvv vector<vvl> #define vvi vector<vector<int> > #define vvl vector<vector<ll> > #define vv(a, b, c, d) vector<vector<d> >(a, vector<d>(b, c)) #define vvvl(a, b, c, d) vector<vvl>(a, vvl(b, vll (c, d))); #define rep(c, a, b) for(ll c=a;c<b;c++) #define re(c, b) for(ll c=0;c<b;c++) #define all(obj) (obj).begin(), (obj).end() typedef long long int ll; typedef long double ld; //typedef __int128_t lll; using namespace std; int main(int argc, char const *argv[]) { ll n, x, y, z;std::cin >> n >> x >> y >> z; vll a(n);re(i, n)scanf("%lld", &a[i]); re(i, n) a[i] = a[i]/1000 + 1; sort(all(a)); reverse(all(a)); for(int i=0;i<n;i++){ if(10*z>=a[i]) z-=a[i]/10, a[i]%=10; else a[i]-=z*10, z=0; } sort(all(a)); reverse(all(a)); if(z!=0) { for(int i=0;i<n;i++) if(a[i]!=0&&z>0) a[i] = 0, z--; sort(all(a)); reverse(all(a)); } //re(i, n) std::cout << a[i] << " "; //std::cout << '\n'; for(int i=0;i<n;i++){ if(5*y>=a[i]) y-=a[i]/5, a[i]%=5; else a[i]-=y*5, y = 0; } sort(all(a)); reverse(all(a)); if(y!=0){ for(int i=0;i<n;i++) if(a[i]!=0&&y>0) a[i] = 0, y--; sort(all(a)); reverse(all(a)); } //re(i, n) std::cout << a[i] << " "; //std::cout << '\n'; ll s = 0; for(int i=0;i<n;i++) s += a[i]; //std::cout << s << " " << x << '\n'; std::cout << (s>x?"No":"Yes") << '\n'; return 0; }