首页 > 其他分享 >POJ 2823 Sliding Window 单调队列

POJ 2823 Sliding Window 单调队列

时间:2023-09-15 10:37:37浏览次数:34  
标签:head 1000009 int tail Window que && POJ Sliding


这道题就是用单调队列来维护,但是用G++交TLE,用c++5000多ms,真是囧...代码很丑,就凑合着看吧
#include<stdio.h>
int a[1000009],que[1000009];
int main(){
	int n,k,i,head,tail,flag=1,f;
	scanf("%d %d",&n,&k);
	for(i=1;i<=n;i++)
		scanf("%d",&a[i]);
	head=1;tail=0;
	f=1;
	for(i=1;i<=n;i++){
		while(tail>=head && a[i]<a[que[tail]])	
			tail--;
		que[++tail]=i;
		if(i>=k){
			if(que[head]<f)
				head++;
			if(flag){
				printf("%d",a[que[head]]);
				flag=0;
			}
			else
				printf(" %d",a[que[head]]);
			f++;
		}
	}
	printf("\n");

	head=1;tail=0;
	flag=1;
	f=1;
	for(i=1;i<=n;i++){
		while(tail>=head && a[i]>a[que[tail]])	
			tail--;
		que[++tail]=i;
		if(i>=k){
			if(que[head]<f)
				head++;
			if(flag){
				printf("%d",a[que[head]]);
				flag=0;
			}
			else
				printf(" %d",a[que[head]]);
			f++;
		}
	}
	printf("\n");
}

 

标签:head,1000009,int,tail,Window,que,&&,POJ,Sliding
From: https://blog.51cto.com/u_16263395/7477990

相关文章

  • POJ 2057 The Lost House 树形DP+贪心
          最近一直在做树形dp,感觉这道题出的非常不错。卡了我一天。。      一上来读完题感觉和dp的思路很像,但是自己太弱了,无从下手。于是各种百度看结题报告、看论文。推荐几个结题报告 http://blog.sina.com.cn/s/blog_5f5353cc0100hd08.html还有06年国家集训队杨......
  • 在 Linux Docker 容器中安装 Windows 虚拟机
    1查看或开启虚拟化我们需要检查我们的系统是否支持虚拟化。由于我们的容器将运行虚拟机管理程序,因此除非主平台支持虚拟化,否则它将无法工作。物理机可以通过bios进行开启,虚拟机也需要开启。这个是虚拟化的内容,所以自行百度打开sudoegrep-c'(vmx|svm)'/proc/cpuinfo2安......
  • Windows 10 Reset navicat 16.2.x
    Resetnavicat16.2.xto14daystrialinWindows10DesktopWriteByjianmuzi1.Createanewfilewiththesuffixbat,Andfillinfollowingcontent:@echooffechoResetNavicatremaining14daystrialecho.setupdate=HKEY_CURRENT_USER\Software\......
  • Python脚本与window命令脚本结合
    前言经常制作各种python脚本处理文件夹里的各种数据数据,但是每次更换一次文件夹就要改一次脚本里的文件路径,这样感觉效率并不高,偶然的一个机会,看到了利用window命令脚本和Python结合,可以搞出类似界面拖拽式输入的方式。操作方式创建一个.cmdwindow命令脚本编写如下代码:@ec......
  • Windows11性能调教笔记
    windows11性能调教笔记windows11性能调节有很多种方式,首先我们可以提升我们的硬件能力水平,但考虑到大多数人不想去提升自己的硬件配置,所以根据笔者研究windows11是可以通过一定的方法去提升性能的。方法分为软件调节和硬件调节。硬件调节电源性能调节利用windows11隐藏的......
  • 去除window.__nuxt__
     nodemodules中  if(shouldInjectScripts){    //APP+=`<script>${serializedSession}<\/script>`;    letpath=this.options.buildDir+'/dist/client/init/init.js'    try{      fs.outputFileSync(path,serial......
  • Windows域控信息导出用户信息
    AD域控导出用户信息1、你要有域控的权限才可以操作2、Get-ADGroupMember-identity"用户所在的域控组"|get-aduser-Properties*|selectname,mail|Export-csv-pathD:\1.csv-NoTypeInformation(-path后面是导出文件的路径)3、selectnamemail等是需要导出的信息。查......
  • (Windows Hadoop环境配置)IDEA:ERROR util.Shell: Failed to locate the winutils bina
    ERRORutil.Shell:Failedtolocatethewinutilsbinaryinthehadoopbinarypath出错原因:还没有在windows上配置hadoop环境变量。解决:在windows上配置hadoop环境变量参考:windows下缺少windutils.exe和hadoop.dll的解决方法_winuntil.exe_许你常欢的博客-CSDN博客下载好对......
  • windows10安装MinGW
    1.下载https://sourceforge.net/projects/mingw/2.安装参考https://www.geeksforgeeks.org/installing-mingw-tools-for-c-c-and-changing-environment-variable/......
  • 9-14|npm install --global windows-build-tools 安装太慢了,能够指定国内源
    如果你在中国,并且发现`npm`的包下载速度很慢,那么很可能是因为默认的npm源在国外。为了提高下载速度,你可以使用淘宝的npm镜像。以下是使用淘宝npm镜像的方法:1.**临时使用** ``` npminstall--globalwindows-build-tools--registry=https://registry.npm.taobao.org......