L2-1 堆宝塔分数

news/2025/1/11 12:46:56/

本题链接:PTA | 程序设计类实验辅助教学平台

题目:

样例:

输入
11
10 8 9 5 12 11 4 3 1 9 15
输出
4 5

思路:

        这是一道模拟题,需要有耐心读题,跟着题目走一遍,就可以了。

代码详解如下:

#include <iostream>
#include <vector>
#include <queue>
#include <cstring>
#include <algorithm>
#include <unordered_map>
#define endl '\n'
#define int long long
#define YES puts("YES")
#define NO puts("NO")
#define umap unordered_map
#define All(x) x.begin(),x.end()
#pragma GCC optimize(3,"Ofast","inline")
#define IOS std::ios::sync_with_stdio(false),cin.tie(0), cout.tie(0)
using namespace std;
const int N = 2e6 + 10;
inline void solve();signed main()
{
//	freopen("a.txt", "r", stdin);IOS;int _t = 1;
//	cin >> _t;while (_t--){solve();}return 0;
}
int n;
vector<int>a,b;
inline void solve()
{int sum = 0;int maxs = 0;cin >> n;int x;cin >> x;a.emplace_back(x);	// 先拿第一个当底盘for(int i = 1;i < n;++i){cin >> x;if(x < a.back()) a.emplace_back(x);else{if(b.size()){if(x > b.back()) b.emplace_back(x);else{++sum;maxs = max(maxs,(int)a.size());a.clear();while(b.size() and b.back() > x){a.emplace_back(b.back());b.pop_back();}a.emplace_back(x);}}else b.emplace_back(x);}}maxs = max(maxs,(int)a.size());if(a.size()) ++sum;if(b.size()) ++sum;cout << sum << ' ' << maxs << endl;
}

最后提交:


http://www.ppmy.cn/news/1420930.html

相关文章

MySQL_00001_00000

数据准备 员工表&#xff1a;emp Oracle: create table emp ( empno number(4) not null, ename varchar2(10), job varchar2(9), mgr number(4), hiredate date, sal number(7, 2), comm number(7, 2), deptno number(2) ); insert into em…

vue3项目需要切换node版本

vue3项目需要的node&#xff0c;18以上版本支持。 查看本地node版本 nvm list Node.js 安装包及源码下载地址为&#xff1a;https://nodejs.org/en/download。 复制18以上的版本号。 nvm install node 21.7.3报错&#xff1a; Could not retrieve http://<https://npm.t…

TryHackMe - HTTP Request Smuggling

学完、打完后的复习 HTTP 1 这部分比较简单&#xff0c;直接略过 HTTP2请求走私 首先要了解HTTP2的结构&#xff0c;与HTTP1之间的一些差异 HTTP2中不再使用CRLF来作为字段的边界限定&#xff0c;而是在二进制中直接通过长度、名字、值长度、值&#xff0c;来确认边界 而这…

Java——static成员

目录 一.再谈学生类 二.static修饰成员变量 三.static修饰成员方法 四.static成员变量初始化 1.就地初始化 2.静态代码块初始化 一.再谈学生类 使用前面推文&#xff08;Java——类和对象&#xff09;中介绍的学生类实例化三个对象s1、s2、s3&#xff0c;每个对象都有自…

Flume配置案例@Source:文件,Channel+Sink:Kafka

Source&#xff1a;某个目录下所有文件 Channel&#xff1a;Kafka Sink&#xff1a;Kafka 【Source和Channel的选择】 1&#xff09;TailDirSource TailDirSource相比ExecSource、SpoolingDirectorySource的优势。 TailDirSource&#xff1a;断点续传、多目录。Flume1.6以前…

力扣860 柠檬水找零 Java版本

文章目录 题目描述代码优化后的代码 题目描述 在柠檬水摊上&#xff0c;每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品&#xff0c;&#xff08;按账单 bills 支付的顺序&#xff09;一次购买一杯。 每位顾客只买一杯柠檬水&#xff0c;然后向你付 5 美元、10 美元或 2…

「51媒体」如何有效进行媒体邀约,提升宣传传播效果?

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 进行有效的媒体邀约&#xff0c;提升宣传传播效果的关键在于策略性和专业性。以下是具体的做法&#xff1a; 明确目标&#xff1a;要确立清晰的品牌推广目标和策略&#xff0c;包括确定目…

HCIP的学习(8)

OSPF数据报文 OSPF头部信息&#xff08;公共固定&#xff09; 版本&#xff1a;OSPF版本&#xff0c;在IPv4网络中版本字段恒定为数值2&#xff08;v1属于实验室版本&#xff0c;v3属于IPv6&#xff09;类型&#xff1a;代表具体是哪一种报文&#xff0c;按照1~5排序&#xff…