$O(n\sqrt n+t)$
#include<cstdio> int t, x, ck[2971]; int main() { for (int i = 1; i <= 45; i++) for (int j = 1; j <= i; j++)for (int k = 1; k <= i; k++) ck[(i*i + i + j*j + j + k*k + k) / 2] = 1; scanf("%d", &t); while (t--)scanf("%d", &x), printf("%d\n", ck[x]); return 0; }
댓글 없음 :
댓글 쓰기