#include <bits/stdc++.h>
using namespace std;

int n,a[30100],w;
int main(){
	int i,j,c = 0;
	cin>>w>>n;
	for(i = 0;i < n;i++){
		cin>>a[i];
	}
	
	sort(a,a+n);
	i = 0,j = n - 1;
	while(i <= j){
		//不能放在一组中 
		if(a[i] + a[j] > w){
			j--;
			c++;
		}else{
			i++;
			j--;
			c++;
		}
	}
	
	cout<<c<<endl;
}


/**************************************************************
	Problem: 1484
	User: admin
	Language: C++
	Result: Accepted
	Time:90 ms
	Memory:2196 kb
****************************************************************/