/*
思维体现:
1.对于所有的偶数而言,它的最小质因子都是2,故减法的操作次数都是 n/2 次
2.对于所有的奇数而言,它的最小质因子一定不是偶数,故减去第一个最小质因子后,它一定变为偶数
3.对于奇数中的质数需要进行特判
*/
#include <iostream>
using namespace std;
typedef long long LL;
int main()
{
LL n;
cin>>n;
if(n%2==0)cout<<n/2<<endl;
else
{
int x=-1;
for(int i=2;i<=n/i;i++)
{
if(n%i==0)
{
x=i;
break;
}
}
if(x==-1)cout<<1<<endl;
else cout<<(n-x)/2+1<<endl;
}
return 0;
}