求助,456WA,11TLE
查看原帖
求助,456WA,11TLE
552642
num1130楼主2022/9/4 13:59
#include<bits/stdc++.h>
using namespace std;
long long L,M,N;
long long arr[50100];
void operate(){
	int m=0;int n=1;
	for(int i=0;i<=N;i++){
		if(arr[i+1]-arr[i]<arr[n]-arr[m]){
			m=i;
			n=i+1;
		}
	}
	if(m!=0&&n!=N+1){
	if(arr[m]-arr[m-1]>=arr[n+1]-arr[n]){
		for(int i=n;i<=N;i++){
			arr[i]=arr[i+1];
		}
	}else{
		for(int i=m;i<=N;i++){
			arr[i]=arr[i+1]; 
		}
	}
	}else if(m==0){
		for(int i=m;i<=N;i++){
			arr[i]=arr[i+1]; 
		}
	}
	N--;
}
int main(){
	cin>>L>>N>>M;
	arr[0]=0; 
	for(int i=1;i<=N;i++){
		cin>>arr[i];
	}
	arr[N+1]=L;
	for(int i=0;i<M;i++){
		operate();
	}
	long long moo=arr[1]-arr[0];
	for(int i=0;i<=N;i++){
		if(moo>=arr[i+1]-arr[i]){
			moo=arr[i+1]-arr[i]; 
	}}
	cout<<moo;
	return 0;
} 
2022/9/4 13:59
加载中...