제출 #1159237

#제출 시각아이디문제언어결과실행 시간메모리
1159237brintonFinancial Report (JOI21_financial)C++20
14 / 100
4091 ms2508 KiB
#include <bits/stdc++.h>
using namespace std;

int main(){
    cin.tie(0);
    ios_base::sync_with_stdio(0);
    //start here
    int N,D;
    cin >> N >> D;
    vector<int> v(N);
    for(auto &i:v)cin >> i;
    
    // brute 2^N
    int maxScore = 1;
    for(int mask = 1;mask < (1 << N);mask++){
        vector<int> chose;
        for(int i = 0;i < N;i++){
            if(mask & (1 << i))chose.push_back(i);
        }
        if(chose.back() != N-1)continue;
        bool valid = true;
        for(int i = 1;i < chose.size();i++){
            if(chose[i]-chose[i-1] > D){
                valid = false;
                break;
            }
        }
        if(!valid)continue;
        // calculate score;
        int score = 1;
        int cMax = v[chose[0]];
        for(int i = 1;i < chose.size();i++){
            if(v[chose[i]] > cMax){
                cMax = v[chose[i]];
                score++;
            }
        }
        maxScore = max(maxScore,score);
    }
    cout << maxScore;
}
#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...