#include #include #include #include #include #include #include #include #include #include using namespace std; #define rep(i,n) for(int i=0;i<((int)(n));i++) #define reg(i,a,b) for(int i=((int)(a));i<=((int)(b));i++) #define irep(i,n) for(int i=((int)(n))-1;i>=0;i--) #define ireg(i,a,b) for(int i=((int)(b));i>=((int)(a));i--) typedef long long int lli; typedef pair mp; #define fir first #define sec second #define IINF INT_MAX #define LINF LLONG_MAX /* int gone[10005][15]; int ok[1000005]; int nw,mh; int dd[5]={1,0,-1,0,1}; bool isp[100005]; void initp(){ rep(i,100005)isp[i]=true; isp[0]=isp[1]=false; reg(i,2,100000){ if(isp[i]){ for(int j=i*2;j<100000;j+=i)isp[j]=false; } } } void dfs(int y,int x){ gone[y][x]=1; int np=(y-1)*nw+x; if(isp[np])return; if(ok[np]==-1)ok[np]=nw; mh=max(mh,y); rep(i,4){ int tx=x+dd[i],ty=y+dd[i+1]; if(gone[ty][tx]==-1)continue; if(!gone[ty][tx])dfs(ty,tx); } } void tes(){ memset(ok,-1,sizeof(ok)); initp(); reg(w,2,10){ memset(gone,-1,sizeof(gone)); nw=w; mh=-1; reg(y,1,5000)reg(x,1,nw){ gone[y][x]=0; } dfs(1,1); printf("%d %d\n",nw,mh); } rep(i,100){ printf("%d %d\n",i,ok[i]); } } */ lli n; lli d[6]={8,9,10,15,16,22}; int main(void){ scanf("%lld",&n); //tes(); int a=8; if(n==4)a=3; if(n==6)a=5; rep(i,6)if(n==d[i])a=7; printf("%d\n",a); return 0; }