import java.util.*;
public class Main{
    public static void main(String[] args){
        Scanner sc=new Scanner(System.in);
        int num=sc.nextInt();
        /*
        1、先弄明白题目的意思,完全数即不包含本身的所有因子的和相加等于本身
        2、不大于n的所有完全数,所以第一层循环小于等于n,从0,1,2等开始都无所谓,因为他们都不是完全数
        3、第二层循环最小值从1开始,1是所有数值的默认因子,最大值不能超过第一层要循环的数据
        4、如果是因子,则i%j能被整除,所以能被整除的j全部加到一个set中
        5、最后把set中的所有因子累加,和i比较,如果相等则说明是完全数
        */
        int count=0;
        for(int i=1;i<=num;i++){
            Set<Integer> set=new HashSet<Integer>();
            for(int j=1;j<i;j++){
                if(i%j==0){
                    set.add(j);
                }else{
                    continue;
                }
                
            }
            int sum=0;
            for(int n:set){
                sum+=n;
            }
            if(sum==i){
//                 System.out.println(i);
                count++;
            }
        }
        System.out.print(count);
    }
}