#include #include using namespace std; int main(){ vector sosuuList; sosuuList.push_back(2); for(long long i = 3; i <= 2000000; i+=2){ bool isPrime = true; for(long long j = 2; j * j <= i; j++){ if(i % j == 0){ isPrime = false; break; } } if(isPrime){ sosuuList.push_back(i); } } long long n, nCopy, count = 0; cin >> n; nCopy = n; if(n == 1){ cout << 1; return 0; } for(long long i = 0; i < (long long)sosuuList.size(); i++){ if(sosuuList[i] < n) break; if(n % (sosuuList[i] * sosuuList[i]) == 0){ cout << 0; return 0; }else if(nCopy % sosuuList[i] == 0){ nCopy /= sosuuList[i]; count++; } } if(count % 2 == 0){ cout << 1; }else{ cout << -1; } return 0; }