rt,(虽然一开始忘记特判WA了第二个点
#include<bits/stdc++.h>
#define ull unsigned long long
#define ll long long
#define ft int
ft qread(){ft f=1, a=0;char ch;ch=getchar();for(; !isdigit(ch); ch=getchar()){if(ch=='-'){f=-1;}}for(; isdigit(ch); ch=getchar()){a=a*10+ch-'0';}return a*f;}
void write(ft x){if(x<0){putchar('-');x=-x;}if(x<10){putchar(x+'0');return ;}write(x/10);putchar(x%10+'0');}
using namespace std;
const int INF=0x3f3f3f3f, N=1e5+5;
stack<int> s;
int n, ans;
int main(){
n=qread();
if((n!=3 && n<5) || n==7){
puts("-1");
return 0;
}
ans=n/5;
if(n%5==0)
write(ans);
else if(n%5==1)
write(ans+1);
else if(n%5==2)
write(ans+2);
else if(n%5==3)
write(ans+1);
else
write(ans+2);
return 0;
}