/ SeriousOJ /

Record Detail

Wrong Answer


  
# Status Time Cost Memory Cost
#1 Accepted 2ms 332.0 KiB
#2 Accepted 2ms 540.0 KiB
#3 Accepted 2ms 564.0 KiB
#4 Accepted 2ms 332.0 KiB
#5 Accepted 2ms 324.0 KiB
#6 Accepted 2ms 332.0 KiB
#7 Accepted 2ms 488.0 KiB
#8 Accepted 2ms 328.0 KiB
#9 Accepted 2ms 328.0 KiB
#10 Accepted 2ms 332.0 KiB
#11 Accepted 2ms 540.0 KiB
#12 Accepted 2ms 496.0 KiB
#13 Accepted 2ms 512.0 KiB
#14 Accepted 2ms 332.0 KiB
#15 Wrong Answer 2ms 376.0 KiB
#16 Accepted 2ms 328.0 KiB
#17 Accepted 2ms 544.0 KiB
#18 Accepted 2ms 540.0 KiB
#19 Accepted 2ms 324.0 KiB
#20 Wrong Answer 2ms 324.0 KiB

Code


#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using ld = long double;
#define pb push_back
#define mod 1000000007
#define srt(v) sort(v.begin(),v.end())
#define rsrt(v) sort(v.rbegin(),v.rend())
#define OPTIMIZE_IO ios::sync_with_stdio(false); cin.tie(nullptr);

ll min_seg(vector<ll> &arr){
    ll n = arr.size();
    ll left = 0, right = n - 1;

    while (left < n - 1 && arr[left] <= arr[left + 1]) {
        left++;
    }
    if (left == n - 1) return 0; 

    while (right > 0 && arr[right - 1] <= arr[right]) {
        right--;
    }
    
    ll minVal = *min_element(arr.begin() + left, arr.begin() + right + 1);
    ll maxVal = *max_element(arr.begin() + left, arr.begin() + right + 1);

    while (left > 0 && arr[left - 1] > minVal) left--;
    while (right < n - 1 && arr[right + 1] < maxVal) right++;

    return right - left + 1;
}

void solve() {
    ll n,k;
    cin>>n>>k;
    vector<ll> arr(n);
    for(int i=0; i<n; i++)cin>>arr[i];
    ll len=min_seg(arr);
    if(len>k){
        cout<<"NO"<<endl;
    }
    else{
        cout<<"YES"<<endl;
        ll pos1=0,pos2=0;
        for(ll i=0; i<n-1; i++){
            if(arr[i]>arr[i+1]){
                pos1=i+1;
                pos2 = min(n, pos1 + len - 1);
                break;
            }
        }
        cout<<pos1<<" "<<pos2<<endl;
    }
}

int main() {
    OPTIMIZE_IO;
    int t=1;
  
    while (t--) {
        solve();
    }
    return 0;
}

Information

Submit By
Type
Submission
Problem
P1120 Stairway to the Skyline
Contest
Brain Booster #7
Language
C++17 (G++ 13.2.0)
Submit At
2024-11-05 16:18:00
Judged At
2024-11-11 02:27:41
Judged By
Score
49
Total Time
2ms
Peak Memory
564.0 KiB