浏览器标题切换
浏览器标题切换end

CodeForces451B - Sort the Array - 暴力

这题还是B题,1300的,但是我总感觉我思路哪里有问题,代码长度比别人的要多几十行。

#include <iostream>
#include <string.h>
#include <algorithm>
#include <cmath>
#include <map>
using namespace std;
typedef long long ll;

int a[100020],b[100020];

int main()
{
    int n;
    cin>>n;
    int flag=1;
    for(int i=0;i<n;i++)
    {
        cin>>a[i];
        if(i!=0&&a[i]<a[i-1])
            flag++;
        b[i]=a[i];
    }

    sort(b,b+n);
    int L=1,R=1;
    for(int i=0;i<n;i++)
    {
        if(a[i]!=b[i])
        {
            L=i+1;
            break;
        }
    }
    for(int i=n-1;i>=0;i--)
    {
        if(a[i]!=b[i])
        {
            R=i+1;
            break;
        }
    }
    if(L>R)
    {
        cout<<"no"<<endl;
        return 0;
    }
    int p=R-1;
    flag=0;
    for(int i=L-1;i<=R-1;i++)
    {
        if(a[i]!=b[p--])
        {
            flag=1;
            break;
        }
    }
    if(flag)
        cout<<"no"<<endl;
    else
    {
        cout<<"yes"<<endl;
        cout<<L<<" "<<R<<endl;
    }
    return 0;
}
posted @   抓水母的派大星  阅读(117)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
点击右上角即可分享
微信分享提示