from statistics import median

#import collections

#aa = collections.Counter(a) # list to list || .most_common(2)で最大の2個とりだせるお a[0][0]

from fractions import gcd

from itertools import combinations # (string,3) 3回

from collections import deque

from collections import defaultdict

import bisect

#

#    d = m - k[i] - k[j]

#    if kk[bisect.bisect_right(kk,d) - 1] == d:

#

#

#

# pythonで無理なときは、pypyでやると正解するかも！！

#

#



import sys

sys.setrecursionlimit(10000000)

mod = 10**9 + 7



def readInts():

  return list(map(int,input().split()))



def main():

    X = int(eval(input()))

    dp = [False] * (X+1)

    # dp[i+1] := i円、そのお金で払えますか?

    # dp[i - 100], ... がTrue なら Trueだあ

    MENU = [100,101,102,103,104,105]

    dp[0] = True # 0円は買える

    for i in range(X):

        for v in MENU:

            if i + 1 - v < 0:

                continue

            dp[i+1] |= dp[i+1-v]

    print((1 if dp[X] else 0))

if __name__ == '__main__':

  main()

X = int(eval(input()))

Food = [100,101,102,103,104,105]

dp = [False] * (X+1)

dp[0] = True

for i in range(X+1):

    for f in Food:

        if i - f >= 0:

            #print(i,i-f)

            dp[i] = dp[i - f] | dp[i]

print(('1' if dp[X] else '0'))

from statistics import median

# import collections
# aa = collections.Counter(a) # list to list || .most_common(2)で最大の2個とりだせるお a[0][0]
from fractions import gcd
from itertools import combinations  # (string,3) 3回
from collections import deque
from collections import defaultdict
import bisect

#
#    d = m - k[i] - k[j]
#    if kk[bisect.bisect_right(kk,d) - 1] == d:
#
#
#
# pythonで無理なときは、pypyでやると正解するかも！！
#
#
import sys

sys.setrecursionlimit(10000000)
mod = 10**9 + 7


def readInts():
    return list(map(int, input().split()))


def main():
    X = int(eval(input()))
    dp = [False] * (X + 1)
    # dp[i+1] := i円、そのお金で払えますか?
    # dp[i - 100], ... がTrue なら Trueだあ
    MENU = [100, 101, 102, 103, 104, 105]
    dp[0] = True  # 0円は買える
    for i in range(X):
        for v in MENU:
            if i + 1 - v < 0:
                continue
            dp[i + 1] |= dp[i + 1 - v]
    print((1 if dp[X] else 0))


if __name__ == "__main__":
    main()

X = int(eval(input()))
Food = [100, 101, 102, 103, 104, 105]
dp = [False] * (X + 1)
dp[0] = True
for i in range(X + 1):
    for f in Food:
        if i - f >= 0:
            # print(i,i-f)
            dp[i] = dp[i - f] | dp[i]
print(("1" if dp[X] else "0"))

-from statistics import median - -# import collections -# aa = collections.Counter(a) # list to list || .most_common(2)で最大の2個とりだせるお a[0][0] -from fractions import gcd -from itertools import combinations  # (string,3) 3回 -from collections import deque -from collections import defaultdict -import bisect - -# -#    d = m - k[i] - k[j] -#    if kk[bisect.bisect_right(kk,d) - 1] == d: -# -# -# -# pythonで無理なときは、pypyでやると正解するかも！！ -# -# -import sys - -sys.setrecursionlimit(10000000) -mod = 10**9 + 7 - - -def readInts(): -    return list(map(int, input().split())) - - -def main(): -    X = int(eval(input())) -    dp = [False] * (X + 1) -    # dp[i+1] := i円、そのお金で払えますか? -    # dp[i - 100], ... がTrue なら Trueだあ -    MENU = [100, 101, 102, 103, 104, 105] -    dp[0] = True  # 0円は買える -    for i in range(X): -        for v in MENU: -            if i + 1 - v < 0: -                continue -            dp[i + 1] |= dp[i + 1 - v] -    print((1 if dp[X] else 0)) - - -if __name__ == "__main__": -    main() +X = int(eval(input())) +Food = [100, 101, 102, 103, 104, 105] +dp = [False] * (X + 1) +dp[0] = True +for i in range(X + 1): +    for f in Food: +        if i - f >= 0: +            # print(i,i-f) +            dp[i] = dp[i - f] | dp[i] +print(("1" if dp[X] else "0"))