1400*C. Element Extermination(贪心&规律)

Problem - 1375C - Codeforces

解析:

可以发现,最左端的数字,无论删除自己还是下一个,这个位置的值都不会变小。

同理,最右端位置的值都不会变大。

所以当最后剩余两个数字的时候,只有左端小于右端数字,才可以符合题意。

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
#define int long long
const int N=3e5+5;
int t,n,a[N];
signed main(){
	scanf("%lld",&t);
	while(t--){
		scanf("%lld",&n);
		int x,y;
		for(int i=1;i<=n;i++){
			scanf("%lld",&a[i]);
			if(i==1) x=a[i];
			if(i==n) y=a[i];
		}
		if(x<y) puts("YES");
		else puts("NO");
	}
	return 0;
}
相关推荐
沐怡旸9 小时前
【底层机制】std::unique_ptr 解决的痛点?是什么?如何实现?怎么正确使用?
c++·面试
感哥10 小时前
C++ 内存管理
c++
聚客AI10 小时前
🙋‍♀️Transformer训练与推理全流程:从输入处理到输出生成
人工智能·算法·llm
大怪v13 小时前
前端:人工智能?我也会啊!来个花活,😎😎😎“自动驾驶”整起!
前端·javascript·算法
惯导马工15 小时前
【论文导读】ORB-SLAM3:An Accurate Open-Source Library for Visual, Visual-Inertial and
深度学习·算法
骑自行车的码农16 小时前
【React用到的一些算法】游标和栈
算法·react.js
博笙困了16 小时前
AcWing学习——双指针算法
c++·算法
感哥17 小时前
C++ 指针和引用
c++
moonlifesudo17 小时前
322:零钱兑换(三种方法)
算法
感哥1 天前
C++ 多态
c++