Submission #36698925
Source Code Expand
#include <cstdio>
#include <iostream>
#include <algorithm>
using namespace std;
typedef long long LL;
const int N = 1e5 + 5;
int n, q, cnt;
LL Q[N], f[N], d[N];
void solve(LL len, LL v) {
int j = lower_bound(Q + 1, Q + cnt + 1, len) - Q;
if (Q[j] > len) --j;
if (!j) d[1] += v, d[len + 1] -= v;
else f[j] += len / Q[j] * v, solve(len % Q[j], v);
}
int main() {
scanf("%d%d", &n, &q), Q[++cnt] = n;
for(int i = 1; i <= q; i++) {
LL x; scanf("%lld", &x);
while (cnt && x <= Q[cnt]) --cnt;
Q[++cnt] = x;
}
f[cnt] = 1;
for(int i = cnt; i > 1; i--) f[i - 1] += Q[i] / Q[i - 1] * f[i], solve(Q[i] % Q[i - 1], f[i]);
d[1] += f[1], d[Q[1] + 1] -= f[1];
for(int i = 1; i <= n; i++) d[i] += d[i - 1];
for(int i = 1; i <= n; i++) printf("%lld\n", d[i]);
}
Submission Info
| Submission Time | |
|---|---|
| Task | E - Sequential operations on Sequence |
| User | Indus |
| Language | C++ (GCC 9.2.1) |
| Score | 1400 |
| Code Size | 794 Byte |
| Status | AC |
| Exec Time | 61 ms |
| Memory | 6136 KiB |
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:19:7: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
19 | scanf("%d%d", &n, &q), Q[++cnt] = n;
| ~~~~~^~~~~~~~~~~~~~~~
./Main.cpp:21:14: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
21 | LL x; scanf("%lld", &x);
| ~~~~~^~~~~~~~~~~~
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 1400 / 1400 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | s1.txt, s2.txt |
| All | 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, s1.txt, s2.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 01.txt | AC | 38 ms | 4480 KiB |
| 02.txt | AC | 35 ms | 4476 KiB |
| 03.txt | AC | 37 ms | 4440 KiB |
| 04.txt | AC | 36 ms | 4484 KiB |
| 05.txt | AC | 36 ms | 4472 KiB |
| 06.txt | AC | 45 ms | 6036 KiB |
| 07.txt | AC | 45 ms | 6064 KiB |
| 08.txt | AC | 45 ms | 6028 KiB |
| 09.txt | AC | 51 ms | 6036 KiB |
| 10.txt | AC | 44 ms | 6036 KiB |
| 11.txt | AC | 41 ms | 6128 KiB |
| 12.txt | AC | 47 ms | 6036 KiB |
| 13.txt | AC | 48 ms | 6132 KiB |
| 14.txt | AC | 43 ms | 6072 KiB |
| 15.txt | AC | 45 ms | 5892 KiB |
| 16.txt | AC | 46 ms | 5896 KiB |
| 17.txt | AC | 45 ms | 5896 KiB |
| 18.txt | AC | 44 ms | 5892 KiB |
| 19.txt | AC | 42 ms | 5920 KiB |
| 20.txt | AC | 45 ms | 6136 KiB |
| 21.txt | AC | 61 ms | 5904 KiB |
| 22.txt | AC | 42 ms | 6032 KiB |
| 23.txt | AC | 52 ms | 6136 KiB |
| 24.txt | AC | 36 ms | 6056 KiB |
| 25.txt | AC | 37 ms | 5944 KiB |
| 26.txt | AC | 33 ms | 5880 KiB |
| 27.txt | AC | 23 ms | 4388 KiB |
| 28.txt | AC | 29 ms | 4476 KiB |
| 29.txt | AC | 22 ms | 4512 KiB |
| 30.txt | AC | 23 ms | 4484 KiB |
| 31.txt | AC | 3 ms | 3800 KiB |
| 32.txt | AC | 18 ms | 4588 KiB |
| 33.txt | AC | 7 ms | 3700 KiB |
| 34.txt | AC | 19 ms | 4524 KiB |
| 35.txt | AC | 7 ms | 3732 KiB |
| 36.txt | AC | 2 ms | 3620 KiB |
| s1.txt | AC | 2 ms | 3620 KiB |
| s2.txt | AC | 2 ms | 3712 KiB |