当前位置: 首页 > article >正文

蓝桥杯 排序题目【算法赛】

0排序题目【算法赛】 - 蓝桥云课


#include<bits/stdc++.h>
using namespace std;

inline int read() {
    int ans = 0, f = 1;
    char ch = getchar();
    while (ch < '0' || ch > '9') {
        if (ch == '-')f = -1;
        ch = getchar();
    }
    while (ch <= '9' && ch >= '0') {
        ans = ans * 10 + ch - '0';
        ch = getchar();
    }
    return ans * f;
}
const int N = 2e5+10;
int a[N],b[N],c[N];
int main() {
    int n =read();
    for (int i =1; i<= n; i++) {
        a[i] = read();
        b[i] = a[i];
    }
    sort(b+1,b+1+n);
    int ans =0;
    for (int i = n; i>= 2; i--) {
        if (b[i] == a[i]) {
            continue;
        }
        if (!ans)
        {
            ans+=i;
            int offset = 0;
            for (int j = i; j>=1; j--) {
                if (b[i] == a[j]) {
                    offset = i - j;
                    break;
                }
            }

            for (int j = 1; j<= i; j++) {
                c[(j + offset-1) % i + 1] = a[j];
            }
            for (int j = 1; j<= i; j++) {
                a[j] = c[j];
            }
        }
        else {
            ans += 2;
            break;
        }

    }
    cout<<ans;
    return 0;
}


http://www.kler.cn/a/585209.html

相关文章:

  • Unity光线追踪移动端降级适配技术指南
  • Mybatis 框架学习
  • C# Type类中Name、FullName、Namespace、AssemblyQualifiedName的区别
  • 了解一下HTTP的短连接和长连接
  • 从波士顿动力到Figure AI:探寻人工智能驱动的机器人智能化
  • UdpClient
  • 什么是 MyBatis?
  • 基于卡尔曼滤波的雷达光电多目标航迹融合算法matlab仿真
  • 基于ssm的宠物医院信息管理系统(全套)
  • 线程池参数调优
  • 游戏引擎学习第152天
  • AI时代研究卷积神经网络(CNN)工具与方法
  • 【即插即用涨点模块】CAA上下文锚点注意力机制:有效捕捉全局信息,助力高效涨点【附源码+注释】
  • 21天 - 说说 TCP 的四次挥手?TCP 的粘包和拆包能说说吗?说说 TCP 拥塞控制的步骤?
  • 谷歌 Gemini 2.0 Flash实测:1条指令自动出图+配故事!
  • el-table 插槽踩过的坑 :slot-scope 和#default的区别
  • 代码随想录-回溯
  • 如何优雅地将Collection转为Map?
  • 平安养老险广西分公司2025年“3∙15”金融消费者权益教育宣传活动暨南湖公园健步行活动
  • 【C语言】编译和链接详解