#include <bits/stdc++.h>
using namespace std;
int trips(int weight[],int num){
unordered_map<int,int>w;
int count;
for(int i=0;i<num;i++){
w[weight[i]]++;
}
int ans=0;
for(auto a:w){
count=0;
int c=a.second;
if(c%3==0){
count=c/3;
}
else{
count=c/3+1;
}
ans=ans+count;
}
return ans;
}
int main() {
// your code goes here
int n;
cin>>n;
int packageWeight[n];
for(int i=0;i<n;i++){
cin>>packageWeight[i];
}
cout<<"the minimum number of trips are:"<<trips(packageWeight,n);
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmludCB0cmlwcyhpbnQgd2VpZ2h0W10saW50IG51bSl7Cgl1bm9yZGVyZWRfbWFwPGludCxpbnQ+dzsKCWludCBjb3VudDsKCWZvcihpbnQgaT0wO2k8bnVtO2krKyl7CgkJd1t3ZWlnaHRbaV1dKys7Cgl9CglpbnQgYW5zPTA7Cglmb3IoYXV0byBhOncpewoJCWNvdW50PTA7CgkJaW50IGM9YS5zZWNvbmQ7CgkJaWYoYyUzPT0wKXsKCQkJY291bnQ9Yy8zOwoJCX0KCQllbHNlewoJCQljb3VudD1jLzMrMTsKCQl9CgkJYW5zPWFucytjb3VudDsKCX0KCXJldHVybiBhbnM7CiAKfQogCmludCBtYWluKCkgewoJLy8geW91ciBjb2RlIGdvZXMgaGVyZQoJaW50IG47CgljaW4+Pm47CglpbnQgcGFja2FnZVdlaWdodFtuXTsKCWZvcihpbnQgaT0wO2k8bjtpKyspewoJCWNpbj4+cGFja2FnZVdlaWdodFtpXTsKCX0KCWNvdXQ8PCJ0aGUgbWluaW11bSBudW1iZXIgb2YgdHJpcHMgYXJlOiI8PHRyaXBzKHBhY2thZ2VXZWlnaHQsbik7CglyZXR1cm4gMDsKfQ==