using System.Collections.Generic;
using System.IO;
using System.Linq;

using static System.Console;

/// <summary>
/// AtCoder を解く上でのテンプレートプロジェクト
/// </summary>
namespace AtCoderTemplete
{
    class Program
    {
        static void Main(string[] args) =>
            new Program().Solve(new ConsoleInput(In, ' '));

        const int marbleNum = 1;

        public void Solve(ConsoleInput cin)
        {
            // 結果格納用変数
            int ret = 0;

            // 整数の取得
            int s = int.Parse(System.Console.ReadLine());

            // 1の数をカウント
            // 全ての桁をカウントするまで繰り返す
            while (s > 0)
            {
                // 1の位が1ならばカウントを増やす
                if (s % 10 == marbleNum)
                {
                    ret = ret + 1;
                }

                // 10で割り、現在の10の位を1の位にする
                s = s / 10;
            }

            // 結果出力
            System.Console.WriteLine(ret.ToString());
        }
    }

    /// <summary>
    /// 汎用入力を提供するクラス
    /// </summary>
    public class ConsoleInput
    {
        #region Readonly Field

        /// <summary>
        /// テキスト読み込み用 Stream
        /// </summary>
        private readonly TextReader _stream;

        /// <summary>
        /// 区切り文字
        /// </summary>
        private readonly char _separator = ' ';

        #endregion Readonly Field

        #region Properties

        /// <summary>
        /// ストリーム取得用キュー
        /// </summary>
        private Queue<string> _InputStream { get; set; } = new Queue<string>();

        /// <summary>
        /// データ読み込みプロパティ
        /// </summary>
        public string Read
        {
            get
            {
                if (_InputStream.Count != 0)
                    return _InputStream.Dequeue();

                var tmp = _stream.ReadLine().Split(_separator);

                for (int i = 0; i < tmp.Length; ++i)
                    _InputStream.Enqueue(tmp[i]);

                return _InputStream.Dequeue();
            }
        }

        /// <summary>
        /// データ読み込み
        /// </summary>
        public string ReadLine { get { return _stream.ReadLine(); } }

        /// <summary>
        /// データ読み込み(int)
        /// </summary>
        public int ReadInt { get { return int.Parse(Read); } }

        /// <summary>
        /// データ読み込み(long)
        /// </summary>
        public long ReadLong { get { return long.Parse(Read); } }

        /// <summary>
        /// データ読み込み(double)
        /// </summary>
        public double ReadDouble { get { return double.Parse(Read); } }

        #endregion Properties

        #region Constructor

        /// <summary>
        /// コンストラクタ
        /// </summary>
        /// <param name="stream"> 入力テキストデータ </param>
        /// <param name="separator"> 区切り文字 </param>
        public ConsoleInput(TextReader stream, char separator = ' ')
        {
            this._separator = separator;
            this._stream = stream;
        }

        #endregion Constructor

        #region Public Methods

        /// <summary>
        /// 型：string[] 読み込み用メソッド
        /// </summary>
        /// <param name="N"> read 長</param>
        /// <returns> 読み込んだデータ配列 </returns>
        public string[] ReadStrArray(long N)
        {
            var ret = new string[N];

            for (long i = 0; i < N; ++i)
                ret[i] = Read;

            return ret;
        }

        /// <summary>
        /// 型：int[] 読み込み用メソッド
        /// </summary>
        /// <param name="N"> read 長</param>
        /// <returns> 読み込んだデータ配列 </returns>
        public int[] ReadIntArray(long N)
        {
            var ret = new int[N];

            for (long i = 0; i < N; ++i)
                ret[i] = ReadInt;

            return ret;
        }

        /// <summary>
        /// 型：long[] 読み込み用メソッド
        /// </summary>
        /// <param name="N"> read 長</param>
        /// <returns> 読み込んだデータ配列 </returns>
        public long[] ReadLongArray(long N)
        {
            var ret = new long[N];

            for (long i = 0; i < N; ++i)
                ret[i] = ReadLong;

            return ret;
        }

        /// <summary>
        /// 型：double[] 読み込み用メソッド
        /// </summary>
        /// <param name="N"> read 長</param>
        /// <returns> 読み込んだデータ配列 </returns>
        public double[] ReadDoubleArray(long N)
        {
            var ret = new double[N];

            for (long i = 0; i < N; ++i)
                ret[i] = ReadDouble;

            return ret;
        }

        #endregion Public Methods
    }
}


Measured memory_bytes: 11220