$O(t+MAXn)$
1~20 번째 완전순열을 미리 구해놓고 각 테스트 케이스마다 정답을 출력한다.
#include<cstdio> int t, n; long long dp[21]; int main() { dp[0] = 1; for (int i = 2; i <= 20; i++) dp[i] = (i - 1)*(dp[i - 1] + dp[i - 2]); scanf("%d", &t); while (t--) scanf("%d", &n), printf("%lld\n", dp[n]); return 0; }
댓글 없음 :
댓글 쓰기