제출 #1333975

#제출 시각아이디문제언어결과실행 시간메모리
1333975KhoaDuyTricks of the Trade (CEOI23_trade)C++20
10 / 100
8085 ms2708 KiB
#include<bits/stdc++.h>
using namespace std;
#define endl '\n'
#define ll long long
signed main(){
    if(fopen("input.txt","r")){
        freopen("input.txt","r",stdin);
    }
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    int n,k;
    cin >> n >> k;
    int c[n+1],s[n+1];
    for(int i=1;i<=n;i++){
        cin >> c[i];
    }
    ll ans=-1e18;
    for(int i=1;i<=n;i++){
        cin >> s[i];
    }
    for(int l=1;l<=n;l++){
        vector<int> v;
        ll sum=0;
        for(int r=l;r<=n;r++){
            sum+=c[r];
            v.push_back(s[r]);
            sort(v.begin(),v.end());
            if(r-l+1>=k){
                ll cost=-sum;
                for(int i=(int)v.size()-1;i>=(int)v.size()-k;i--){
                    cost+=v[i];
                }
                ans=max(ans,cost);
            }
        }
    }
    bool trace[n+1]={false};
    for(int l=1;l<=n;l++){
        vector<int> v;
        ll sum=0;
        for(int r=l;r<=n;r++){
            sum+=c[r];
            v.push_back(s[r]);
            sort(v.begin(),v.end());
            if(r-l+1>=k){
                ll cost=-sum;
                for(int i=(int)v.size()-1;i>=(int)v.size()-k;i--){
                    cost+=v[i];
                }
                if(ans==cost){
                    for(int i=l;i<=r;i++){
                        if(s[i]>=v[v.size()-k]){
                            trace[i]=true;
                        }
                    }
                }
            }
        }
    }
    cout << ans << endl;
    for(int i=1;i<=n;i++){
        if(trace[i]){
            cout << '1';
        }
        else{
            cout << '0';
        }
    }
}

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

trade.cpp: In function 'int main()':
trade.cpp:7:16: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)' declared with attribute 'warn_unused_result' [-Wunused-result]
    7 |         freopen("input.txt","r",stdin);
      |         ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...