// 从最大可能的 8 个装袋数(n / 8)开始递减尝试,计算剩余橙子数是否能被 6 整除,第一个符合条件的组合即为最少袋数(因优先用大包装,总袋数最少)。
const rl = require("readline").createInterface({ input: process.stdin });
var iter = rl[Symbol.asyncIterator]();
const readline = async () => (await iter.next()).value;

void async function () {
    // Write your code here
    let n = 0
    rl.on('line',(s)=>{
        n = s
    })
    rl.on('close',(s)=>{
        for(let y = Math.floor(n / 8);y>=0; y--){
            const remine = n - 8 * y
            if(remine % 6 === 0 && remine>=0) {
                const x = remine / 6
               return console.log(x + y)
            }
        }

        console.log(-1)
    })
}()