Ahmed_Negm

Untitled

Apr 22nd, 2022
116
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.34 KB | None | 0 0
  1. #include<iostream>
  2. #include<cmath>
  3. #include<iomanip>
  4. #include<algorithm>
  5. #include<cstdlib>
  6. #include<cstring>
  7. #include<vector>
  8. #include<utility>
  9.  
  10. #define ll long long
  11. #define sz(x) int(x.size())
  12. #define all(x) x.begin(),x.end()
  13. #define rall(s)  s.rbegin(), s.rend()
  14. #define ceill(n, m) (((n) / (m)) + ((n) % (m) ? 1 : 0))
  15. using namespace std;
  16.  
  17. void Fast_IO(){
  18.     ios_base::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
  19.     #ifndef ONLINE_JUDGE
  20.         freopen("input.txt", "r", stdin), freopen("output.txt", "w", stdout);
  21.     #endif
  22. }
  23.  
  24.  
  25.  
  26.  
  27.  
  28. void solve(){
  29.     ll n,k; cin>>n>>k;
  30.     vector<ll>v(n+k);
  31.     vector<ll>slept(n+k);
  32.     int start,end;
  33.     ll maxi = -__LONG_LONG_MAX__;
  34.     for(int i=1; i<=n;i++){
  35.         cin>>v[i];
  36.     }
  37.    
  38.     for(int i=1; i<=n; i++) cin>>slept[i];
  39.     for(int i=1; i<=n; i++){
  40.         if(slept[i]==0){
  41.             ll sum =0;
  42.             for(int j = i; j<i+k; j++){
  43.                 sum += v[j];
  44.             }
  45.             if(sum>maxi){
  46.             maxi = sum;
  47.             start = i,end=i+k-1;
  48.             }
  49.         }
  50.  
  51.     }
  52.     ll res =0;
  53.     for(int i=1; i<=n; i++){
  54.         if(slept[i] == 1 && (i<start || i>end)){
  55.             res += v[i];
  56.         }
  57.     }
  58.     cout<<res+maxi;
  59.    
  60.  
  61. }
  62.  
  63. int main(){
  64.     Fast_IO();
  65. int t =1;
  66. //cin>>t;
  67. while(t--){
  68. solve();
  69. }
  70. return 0;
  71. }  
Advertisement
Add Comment
Please, Sign In to add comment