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

int upperbound(vector<int>& nums ,int k){
	int n=nums.size();
	int start=0 , end =n-1;
	
}
int main() {
	// vector<char> ok={'f','f','f','f','f','f','f','f','f','t','t','t','t','t'};
	// int n=ok.size();
	// int start=0 , end=n-1 , first ,mid;
	// while(start<=end){
	// 	mid=(start+end)/2;
	// 	cout<<mid<<"  "<<ok[mid]<<endl;
	// 	if(ok[mid]=='t'){
	// 		first=mid;
	// 		end=mid-1;
	// 	}else if(ok[mid]<'t'){
	// 		start=mid+1;
	// 	}
	// }
	// cout<<first<<endl;
	
	vector<int> ok={3,5,5,8,8,10,12};
	int n=ok.size();
	int k=6;
	int start=0 , end=n-1 , fo;
	// while(start<=end){
	// 	int mid=(start+end)/2;
	// 	if(ok[mid]<k){
	// 		start=mid+1;
	// 	}else if(ok[mid]>=k){
	// 		if(ok[mid-1]>k){
	// 			end=mid-1;
	// 		}else if(ok[mid-1]<=k){
	// 			fo=mid;
	// 		}
	// 	}
	// }
	auto it=upper_bound(ok.begin(),ok.end(),9);
	auto it2=it-ok.begin();
	cout<<it2<<endl;
	
	
	return 0;
}