import sys,random,bisect from collections import deque,defaultdict from heapq import heapify,heappop,heappush from itertools import permutations from math import gcd,log input = lambda :sys.stdin.readline().rstrip() mi = lambda :map(int,input().split()) li = lambda :list(mi()) N = int(input()) ok = 0 ng = 10**6 + 10 while ng-ok>1: mid = (ok+ng)//2 if mid**3 <= N: ok = mid else: ng = mid print("Yes" if ok**3==N else "No")