爆刷PAT(甲级)——之【1101】 Quick Sort (25 分)——简单思维

PAT甲级——1101 Quick Sort (快速排序) 1101Quick Sort(25分) There is a classical process namedpartitionin the famous quick sort algorithm. In this process we typically choose one element as the pivot. Then the elements less than the p... 阅读详情

题意:给一个无序的正数数组(各数不同),找出,所有左边的数小于它,所有右边的数大于它,的数。输出符合条件的数,以及其个数。

思路:一下子就可以想到,所有左边的数小于它,那就是左边最大的数都比它小。

所有右边的数都大于它,那就是右边最小的数都比它大。即可。

所以什么操作都不需要,直接两个O(N),建立两个数组 l[i] 和 r[i] ,表示 i 下标位置左边最大的数和右边最小的数,扫一遍就建立好了。

然后每个点判断一边,如果元素比它左边一格的 l[i-1]都大,那就符合第一个条件;如果元素比它右边一格的 r[i+1] 都大,就符合第二个条件。都符合就加入vector最后排个序输出即可。

 

坑点:

两个坑爹之处——N小于等于10e5,数组别开小了;答案可能为0,但是输出还要输出一个'\n',不然会PLE.

Code:

#include<bits/stdc++.h>
#include<unordered_map>
using namespace std;
#define inf 100009
#define INF 0x3f3f3f3f
#define loop(x,y,z) for(x=y;x<z;x++)

int n;
int e[inf];
int l[inf];//find max
int r[inf];//find min
vector<int>ans;//the ans

int main()
{
    int i;
    cin>>n;
    for(i=1;i<=n;i++)scanf("%d",&e[i]);
    l[0]=0;
    r[n+1]=INF;
    for(i=1;i<=n;i++)l[i]=max(l[i-1],e[i]);
    for(i=n;i>0;i--)r[i]=min(r[i+1],e[i]);
    //判断
    for(i=1;i<=n;i++)
        if(e[i]>l[i-1]&&e[i]<r[i+1])
            ans.push_back(e[i]);
    sort(ans.begin(),ans.end());
    printf("%d\n",ans.size());
    if(!ans.size()){printf("\n");return 0;}//本题目最骚的地方
    for(i=0;i<ans.size()-1;i++)printf("%d ",ans[i]);
    printf("%d\n",ans[i]);
    return 0;
}

 

Foobar2000 1.2.3 Asion中文增强版 高级音频播放器 Foobar2000 是一个 Windows 平台下的高级音频播放器,包含完全支持 unicode 及支持播放增益的高级标签功能。Foobar2000 V1.2.1 Final 中文版由Asion汉化,集成了APE解码器、DTS解码器、TTA解码器、TAK解码器、SACD解码器、歌词秀3(歌词插件)、播放统计信息插件。 Foobar2000特色: * 支持的音频格式: MP3, MP4, AAC, CD Audio, WMA, Vorbis, FLAC, WavPack, WAV, AIFF, Musepack, Speex, AU, SND, 通 过第三方插件将支持更多的格式. * 完全支持 Unicode * 轻松定制用户界面布局 * 高级标签功能 * 可以使用转换器组件对所有支持的格式转换编码格式 * 支持播放增益 * 可自定义快捷键 * 开放的组件体系结构允许第三方开发者来扩展播放器的功能. 汉化版加入了以下插件(均为可选安装): A版:APE 解码器 B版: APE 解码器 DTS 解码器 TTA 解码器 TAK 解码器 SACD 解码器 歌词秀3 播放统计信息 立即下载

相关推荐

Python广度优先搜索BFS - 蓝桥13届省赛污染海域

请问这片N * M海域中有几块是没被污染的独立海域(没被污染的独立海域是指该块海域上下左右被已污染的海域包围,且N * M以外的海域都为已被污染的海域)有一片海域划分为N * M个方格,其中有些海域已被污染(用0表示),有些海域没被污染(用1表示)。第二行开始输入N行,每行M个数字(数字只能为1或者0,1表示没被污染的海域,0表示已被污染的海域)这块4 * 5的海域,有3块海域(绿色)没被污染,因为每一块的上下左右都被污染的海域包围。输出一个整数,表示N * M的海域中有几块是没被污染的独立海域。

m0_69865359的博客 264

PAT甲级1101 Quick Sort (25 分)题解

\quad这是一道逻辑题,给了快排的背景。题目大意是给你一个数字序列,找出这个序列里面有多少个数满足两个条件: 它左边的数都小于它 它右边的数都大于它 \quad我们可以暴力求解,时间复杂度为O(n2)O(n^2)O(n2),肯定会超时。正解是将序列存入两个数组a和b,对a排序,比如a={1,2,3,4,5},b={1,3,2,4,5},那么遍历b,若满足下列三个条件则该元素为正确解答的一部...

qq_40438165的博客 1549

Claude Code教程(二) | Claude Code 核心信息与使用指南

Claude Code 核心信息与使用指南

qq_20236937的博客 2183

1101 Quick Sort

1101 Quick Sort

weixin_48448010的博客 162

《机器人学一(Robotics(1))》_台大林沛群 第 3 周 【机械手臂 顺运动学】Quiz 3

的方向,旋转方向与四指弯曲方向相反,为负, α为 -90。的方向,旋转方向与四指弯曲方向相反,为负, α为 -90。bug 的图 要求解的 i 位置有误 两套 题目?B. 第2个 坐标系 的原点位置 不便于 计算;上面的正确,后两题 有误, 不知道问题在哪里。标准部分, 前面的更常用,这种仅作为 了解。还是计算过程中保留两位有效数字 不符合。2、确定 旋转角 α 正负的右手定则。1、确定坐标系方向的右手定则。可相交,距离为 0。A: 右手拇指指向。小数点后两位,不符合。

weixin_46034116的博客 1242

SikuliX实战:5分钟搞定游戏挂机脚本(附防检测思路与Python集成技巧)

本文详细介绍了如何使用SikuliX快速开发游戏挂机脚本,包括环境配置、基础原理、防检测策略及Python集成技巧。通过实战案例展示如何实现自动化任务、高级防检测方案,并结合Python提升脚本性能与智能度,帮助玩家高效完成重复性游戏操作。

weixin_33228769的博客 334

1101. Quick Sort

这道题想找到一组数据中满足,左边的数字都小于它,右边的数字都大于它的数字。 最暴力的方法n^2会超时 这道题的Quick Sort实际上已经提示我们了,这道题的重点在于发现符合题目条件的数字在sort之后的位置是相同的,这一点回想quick sort过程就很容易验证,并且保证数组中的数字要大于前面数字的最大值,就会满足题意,具体代码如下:#include<iostream> #include<v

写代码的柯长的博客 326

【Allegro学习笔记】常规标贴封装创建-0402封装创建实例

摘要 本文主要介绍如何使用Allegro制作表面贴装封装。 所使用的软件 使用Allegro制作常规贴片封装主要使用的软件有Pad Designer和Allegro 1 0402类封装制作 1.1 0402类封装焊盘分析 0402封装尺寸图如图1...

Honglong 1万+

1101 Quick Sort (25分)[逻辑][快速排序]

By Jalan 文章目录**By Jalan**知识工具需求数学数据结构和算法语言题干输入条件输出条件坑点例子例1输入输出题解第一次思路预期时间复杂度编写用时代码CPP运行用时结尾 知识工具需求 数学 数据结构和算法 语言 题干 快速排序有分类这个步骤,就是选一个数把比他小的放一边大的放另一边. 现在看看有没有这些数 输入条件 N个数<=10^5 每个数不会大于10^9 输出条件 输出左边都比它小右边都比它大的数的个数和数,末尾没空格. 坑点 这题有一个地方我真的没懂,输出完还要打印个换行,要不会有

JalanChao的博客 346

微信小程序 - 实现身份证OCR识别人像面与国徽面并提取字段信息,详解从手机相册选取或打开摄像头拍照上传身份证正反面图片ocr文字识别数据填充表单(提供免费纯前端ocr识别插件+百度OCR识别API)

微信小程序身份证识别,微信小程序身份证拍照、上传并OCR识别,微信小程序实现OCR扫描识别,微信小程序识别身份证免费插件,微信小程序实现身份证识别功能。ocr识别插件。微信身份证拍照后进行ocr识别,微信小程序OCR扫描识别身份证,OCR身份证实名认证+图片上传+拍照上传图片,微信小程序之身份证照片正反上传,小程序OCR身份证识别,微信小程序实现文字识别-ocr插件,微信小程序利用百度AI实现扫描身份证获取信息功能,基于微信小程序OCR插件实现身份证拍照、上传并OCR识别的示例demo,将上传的照片传到服务

🏆 前端领域优质创作者 8133

Open3D (C++) 泊松重建【2025最新版】

使用C++版本的Open3D实现点云的泊松重建

点云侠的博客 3073

PAT甲级1101 Quick Sort:[C++题解]DP、快速排序划分个数、快排

刷题

阿正的梦工坊 579

基于注意力机制的行人重识别(Reld)模型论文解读----Relation-Aware Global Attention for Person Re-identification

任务概述:在多摄像头的复杂场景中,快速定位查找指定目标的所有结果。

qq_52053775的博客 1895

1101 Quick Sort——PAT甲级

【代码】1101 Quick Sort——PAT甲级。

flyidj的博客 1754

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

【PAT甲级 - C++题解】1101 Quick Sort

📣专栏定位:为想考甲级PAT的小伙伴整理常考算法题解,祝大家都能取得满分!

Newin2020的博客 604

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

[PAT B1045/A1101]Quick Sort

[PAT B1045/A1101]Quick Sort 本题是PAT乙级1045题和甲级1101题,这里先放英文原题,要做乙级题的同学可以直接看后面的中文原题 题目描述 1101 Quick Sort (25 分)There is a classical process named partition in the famous quick sort algorithm. In this proc...

欢迎来到我的编程小屋 602

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

【PAT甲级】1101 Quick Sort (25分)

解题过程的小记录,如有错误欢迎指出。 难度:一星(在做完1012后弄懂排序规则后此题并不难) 小导航~题目分析注意点我的解题过程思路bug代码dalao的代码借鉴点 题目分析 注意点 我的解题过程 思路 bug 代码 dalao的代码 全部代码因版权原因不放出来,大家可以自行去柳神博客购买或者参考晴神的上机笔记~ 借鉴点 ...

SpicyChicken的自我修养 5115

PAT甲级1101 Quick Sort (25 分)

1101Quick Sort(25分) There is a classical process namedpartitionin the famous quick sort algorithm. In this process we typically choose one element as the pivot. Then the elements less than the p...

Dexter 275

1101 Quick Sort (25 分)

1101 Quick Sort (25 分) There is a classical process named partition in the famous quick sort algorithm. In this process we typically choose one element as the pivot. Then the elements less than the pivot are moved to its left and those larger than the pivo

Tropine的博客 190

PAT 甲级 1101  Quick Sort

1101 Quick Sort (25 point(s)) There is a classical process named partition in the famous quick sort algorithm. In this process we typically choose one element as the pivot. Then the elements less tha...

漫浸天空的雨色的备忘录~ 607

甲级PAT 1101 Quick Sort (25 分)

1101 Quick Sort (25 分) There is a classical process named partition in the famous quick sort algorithm. In this process we typically choose one element as the pivot. Then the elements less than the p...

Joyceyang_999的博客 258

PAT甲级1101、Quick Sort

这个题目一看上去就有动态规划的意思,用数组记录一个元素前的某种信息,以此来达到节省搜索的时间的目的。那么放两个数组来记录就行了,一个记之前最大的,一个记之后最小的,也就是前后都要遍历一遍。一个元素可以作为pivot,那么前面不可以有比它大的,后面不可以有比它小的。要注意的是N可能为0,没有元素给出,这时需要输出的是0,无元素。题中给的是N为positive integer,怎么会为0呢?测试点2是这个东西。我不知道是我理解的问题还是出题的问题。时间复杂度算是O(n)级别,挺好。

geooorge的博客 933

甲级PAT 1101 Quick Sort (25 分)(提前打表)

1101 Quick Sort (25 分) There is a classical process named partition in the famous quick sort algorithm. In this process we typically choose one element as the pivot. Then the elements less than the p...

Joyceyang_999的博客 321

PAT甲级刷题记录——1101 Quick Sort (25分)

There is a classical process named partition in the famous quick sort algorithm. In this process we typically choose one element as the pivot. Then the elements less than the pivot are moved to its le...

一只奋斗中的本科生 228

PAT甲级A1101 Quick Sort (25 分)

There is a classical process named partition in the famous quick sort algorithm. In this process we typically choose one element as the pivot. Then the elements less than the pivot are moved to its le...

vir_lee的博客 255

PAT——1101 Quick Sort 甲级

1101 Quick Sort题目题意代码解析AC代码参考 题目 https://pintia.cn/problem-sets/994805342720868352/problems/994805366343188480 题意 pivot 中心点,由题可知,快速排序的中心点就是左面都比它小、右边都比它大的位置对应的数字。题目给出一个数字序列,我们需要找出符合要求的中心点 代码解析 测试可知,一个符合要求的中心点,在排序后,其位置是不变的。但如果一个序列是降序序列,其中心位置(n为奇数时)的数的位置也是不变的

ljhsq的博客 241
上一篇: 爆刷PAT(甲级)——之【1103】 Integer Factorization (30 分)——DFS+剪枝
下一篇: 爆刷PAT(甲级)——之【1135】 Is It A Red-Black Tree (30 分)——简单模拟
仰天倀笑
博客等级 码龄10年 313粉丝 124原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值