結果
問題 |
No.1791 Repeat Multiplication
|
ユーザー |
👑 |
提出日時 | 2021-12-20 00:08:34 |
言語 | C (gcc 13.3.0) |
結果 |
TLE
|
実行時間 | - |
コード長 | 510 bytes |
コンパイル時間 | 274 ms |
コンパイル使用メモリ | 30,208 KB |
実行使用メモリ | 27,776 KB |
最終ジャッジ日時 | 2024-09-15 14:58:31 |
合計ジャッジ時間 | 5,880 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 10 TLE * 1 -- * 21 |
ソースコード
#include <stdio.h> int main() { int i, N, Q; long long ans[2][1500001]; scanf("%d %d", &N, &Q); int j; for (i = N; i >= 1; i--) for (j = 2, ans[0][i] = 1; i * j <= N; j++) ans[0][i] += ans[0][i*j]; for (i = 1; i <= N; i++) { for (j = 2, ans[1][i] = 1; j * j < i; j++) if (i % j == 0) ans[1][i] += ans[1][j] + ans[1][i/j]; if (j * j == i) ans[1][i] += ans[1][j]; } int x; for (i = 1; i <= Q; i++) { scanf("%d", &x); printf("%lld\n", ans[0][x] * ans[1][x]); } fflush(stdout); return 0; }