首页 > 五一训练礼包 M - 13
头像
流莹遮月
编辑于 2021-05-03 13:35
+ 关注

五一训练礼包 M - 13

本题要求删除元素让剩下的元素形成类似金字塔的元素列:先递增到最大值后又递减(题目中的good元素列)。要求删除的前缀最短,即是余下的后缀最长,所以从后遍历,先递增再递减,遍历到最后一个元素其下标就是删除的元素数。
#include<stdio.h>
int main()
{
	int t,i;
	scanf("%d",&t);
	while(t--)
	{
	 int a[200002],n,x=0,ans=0;
	 scanf("%d",&n);
	 for(i=0;a[i]!=0;i++)
	 {
	 	a[i]=0;
	 }
	 for(i=0;i<n;i++)
	 {
	 	scanf("%d",&a[i]);
	 }
	 for(i=n-1;i>=0;i--)
	 {
	 	if(a[i-1]<a[i])
	 	x++;
	 	if((a[i-1]>a[i])&&x>0)
	 	{
	 		ans=i;break;
		}
	 }
	 printf("%d\n",ans);
	}
	return 0;
} 

全部评论

(0) 回帖
加载中...
话题 回帖

推荐话题

相关热帖

近期精华帖

热门推荐