首页 > 其他分享 >Queue Sort

Queue Sort

时间:2024-04-12 19:23:34浏览次数:13  
标签:Sort index int Queue solve mins

原题链接

题解

1.最小数在操作之前是第一位,操作之后也必然是第一位,这就导致了如果原数组最小数后的数遍历不到,如果非有序就真的没法有序了,否则每个数都刚好大于前面一个数一定有序

code

#include<bits/stdc++.h>
using namespace std;
int a[200005]={0};
int mins=2e9,index;
int n;
void solve()
{
    for(int i=index+1;i<=n;i++)
    {
        if(a[i]<a[i-1])
        {
            puts("-1");
            return ;
        }
    }


    cout<<index-1<<endl;
    return;
}
int main()
{
    int t;
    cin>>t;
    while(t--)
    {
        cin>>n;
        mins=2e9;
        for(int i=1;i<=n;i++)
        {
            cin>>a[i];
            if(mins>a[i])
            {
                index=i;
                mins=a[i];
            }
        }

        solve();
    }
    return 0;
}

标签:Sort,index,int,Queue,solve,mins
From: https://www.cnblogs.com/pure4knowledge/p/18131960

相关文章

  • Java stream sorted使用 Comparator 进行多字段排序
    摘要:介绍使用JavaStream流排序器Comparator对List集合进行多字段排序的方法,包括复杂实体对象多字段升降序混合排序方法。综述​ Java8的Stream使用了函数式编程模式,人如其名,它可以被用来对集合或数组进行链状流式的排序、过滤和统计等操作,从而让我们更方便的对集合或数组......
  • Java中Array.sort()的几种用法简明教程 (需要初始化要排序的对象)对 一个数组的所有元素
    Java中Array.sort()的几种用法简明教程(需要初始化要排序的对象)对一个数组的所有元素进行排序,并且是按从小到大的顺序Java中Array.sort()的几种用法简明教程(需要初始化要排序的对象)======================================================1、Arrays.sort(int[]a)......
  • el-table实现动态数据的实时排序,一篇文章讲清楚elementui的表格排序功能,利用@sort-cha
        写这篇博客的原因是前段时间做了一个数据列可变的表格,同时需要实现在网页中更新了数据列之后,能够对表格进行排序的需求。如果想要直接了解实现el-table的动态数据动态排序(列数据是通过计算获得,并且可以在页面中修改,在此基础上实现数据变化后实时更新)。请直接跳到......
  • CF1681C Double Sort 题解
    一道普及-我写了两个半小时题面。需要注意的是,每次交换需要将a和b两个数组同时交换,因此便可以想到唯一可行情况:a,b序列数字间的大小关系必须一致。举个例子2462131317970612在上面的例子中,两个序列中任意\(i\)和\(j\)满足\(a_i\lea_j\)时\(b_i......
  • CF875B Sorting the Coins 题解
    题面。算是比较简单的题目了,自己多手出几个样例就可以发现规律了。强烈建议多读几遍题目!!!!思路设0表示硬币朝上,1表示硬币朝下,则第\(0\)次与第\(n\)操作一定输出\(1\)。因为没有可以操作的对象,前者是由于全部硬币朝上,后者是由于全部硬币朝下,即使没有操作也要遍历一遍。注......
  • Sort函数的使用
    std::sort函数是<algorithm>头文件中的一个模板函数,用于对容器中的元素进行排序。通常,std::sort函数需要三个参数:指向要排序序列的起始位置的迭代器。指向要排序序列的结束位置之后一个位置的迭代器。一个可选的比较函数或可调用对象,用于确定排序顺序。当你只传递两个参数给s......
  • C++ 标准库类型priority_queue
    C/C++总述:StudyC/C++-CSDN博客 堆(数据结构):堆-CSDN博客priority_queue(优先队列)在优先队列中,元素被赋予优先级(按约定的函数来赋予优先级,底层通过堆来实现)。当访问元素时,具有最高优先级的元素最先删除。优先队列具有最高级先出(firstin,largestout)的行为特征。定义......
  • 布隆过滤器 及 Redis Sorted sets 使用注意事项
    布隆过滤器基本概念布隆过滤器(英语:BloomFilter)是1970年由伯顿·霍华德·布隆(BurtonHowardBloom)提出的。它实际上是一个很长的二进制向量和一系列随机映射函数。布隆过滤器可以用于检索一个元素是否在一个集合中。它的优点是空间效率和查询时间都远远超过一般的算法,缺点是有......
  • sort和sorted的区别使用
    l=list(map(int,input().split()))b=sorted(l,reverse=False)#reverse=True是降序,False是降序print(b)#sorted()函数是将一个排好序的列表赋给另一变量a.sort(reverse=False)#用法和sorted一样#只不过sort函数直接将列表进行排序不能赋给其他列表在代码里我们可以在注释里......
  • CF1815A Ian and Array Sorting 题解
    题面。直接进入主题吧。思路题目要求非递减序列,很明显,由题目给的操作,一定可以将这个序列的前\(n-1\)项能够满足是非递减序列,最后只需要比较第\(n\)项是否大于等于第\(n-1\)项即可。解释一下为什么。对于序列\(a\),从\(a_1\)开始到\(a_{n-1}\)结束,每次对\(a_i\)......