https://www.51nod.com/Challenge/Problem.html#!#problemId=1717
一个数最后是好数 说明被翻转了偶数次 说明他有偶数个因子
一个数有多少因子 可以将其进行素因子分解 n=(2^p1)*(3^p2)*(5^p3)... 则(p1+1)*(p2+1)*(p3+1)...即为其因子个数 因为是偶数所以p1 p2...pk中肯定有个奇数 反之对于坏数 则p1 p2...pk全为偶数 这不就是完全平方数吗 开根号就完事了
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int main()
{
ll n;
scanf("%I64d",&n);
printf("%I64d\n",n-(ll)(sqrt(n)));
return 0;
}