站外题求调
  • 板块灌水区
  • 楼主lg_lcl
  • 当前回复5
  • 已保存回复5
  • 发布时间2024/7/16 21:45
  • 上次更新2024/7/17 08:13:26
查看原帖
站外题求调
688740
lg_lcl楼主2024/7/16 21:45

题目描述

新春佳节之际,路上挂起了一排喜气洋洋的大红灯笼,从左至右编号分别为 1,2,...,n。但小爱发现,目前有 p个灯笼不亮了,很是影响美观。

请你帮助小爱计算,最少修复多少个灯笼,便可使道路上有连续 m个亮着的大红灯笼?

输入

输入共两行:

第一行,三个正整数分别表示 n,m,p 第二行, p个正整数,表示已经不亮的灯笼编号

输出

输出共一行,一个正整数表示答案

样例输入

8 5 3

5 1 8

样例输出

1

#include<bits/stdc++.h>
using namespace std;
int n,m,p,a[100005],sum[100006],minn=1000,c;
int main(){
	cin>>n>>m>>p;
	for(int i=1;i<=p;i++){
	    cin>>c;
	    a[c]=1;
	}
	for(int i=1;i<=n;i++)
	    sum[i]=sum[i-1]+a[i];
	for(int i=m;i<=n;i++)
	    minn=min(minn,sum[i]-sum[i-m]);
	cout<<minn;
	return 0;
}

71分求调

2024/7/16 21:45
加载中...