#include <iostream>
using namespace std;
int n,ans=1e8;
void dfs(int x,int k){//x为当前数目,k为袋数
    if(x>n)return ;//超出直接停止
   if(x==n){
       ans=min(ans,k);//满足条件更新ans
       return ;
   }
   x=x+6;//选6个的
   dfs(x,k+1);
   x=x-6;//回溯
   x=x+8;//选8个的
   dfs(x,k+1);
   return ;//可停可不停
}
int main() {
    cin>>n;
    dfs(0,0);//0,0开始搜
    if(ans!=1e8)//ans更新过则输出ans
    cout<<ans;
    else cout<<-1;
}