제출 #1272532

#제출 시각아이디문제언어결과실행 시간메모리
1272532zagaro은행 (IZhO14_bank)C++20
0 / 100
214 ms327680 KiB
#include<bits/stdc++.h> #include<ext/pb_ds/assoc_container.hpp> /**zagaro & lauren <3**/ #define mod 1000000007 //1e9 + 7 #define pi acos(-1) #define wl while #define str string #define ENDL "\n" #define sal ' ' #define tp_set ll #define prc(n) cout.precision(n);cout<<fixed; #define ord_set tree<tp_set, null_type, less<tp_set>, rb_tree_tag, tree_order_statistics_node_update> typedef long long ll; typedef bool bl; typedef char car; using namespace std; using namespace __gnu_pbds; int main(){ ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); freopen("bank.in", "r", stdin); freopen("bank.out", "w", stdout); int n, m; bl B=false; cin>>n>>m; vector<int> vec(n+2, 0); vector<int> bil(m); vector<int> sum((1<<m), 0); vector<int> prf(n+2, 0); vector<vector<bl> > dp(n+2, vector<bl> ((1<<m), false)); dp[0][0] = true; for(int i=1;i<=n;i++)cin>>vec[i]; for(int i=0;i<m;i++)cin>>bil[i]; for(int i=1;i<=n;i++)prf[i]+=prf[i-1]+vec[i]; for(int i=0;i<(1<<m);i++){ for(int k=0;k<m;k++){ if((i&(1<<k)) != 0){ sum[i]+=bil[k]; } } } for(int i=0;i<=n;i++){ for(int j=0;j<(1<<m);j++){ if(dp[i][j] && sum[j] == prf[i]){ dp[i+1][j] = true; } else if(dp[i][j]){ for(int k=0;k<m;k++){ if((j&(1<<k)) == 0 && sum[j&(1<<k)]+bil[k] <= prf[i]){ dp[i][j^(1<<k)] = true; } } } } } for(int i=0;i<(1<<m);i++){ if(dp[n][i] && sum[i] == prf[n]){ B=true; break; } } if(B)cout<<"YES\n"; else cout<<"NO\n"; return 0; }

컴파일 시 표준 에러 (stderr) 메시지

bank.cpp: In function 'int main()':
bank.cpp:21:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   21 |     freopen("bank.in", "r", stdin);
      |     ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
bank.cpp:22:12: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
   22 |     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...