Submission #69915369
Source Code Expand
Copy
#include <stdio.h>#include <inttypes.h>int N, Q;int A[212345];int query[212345][3];int64_t sum[212345];int main(void) {int i;int start = 0;if (scanf("%d%d", &N, &Q) != 2) return 1;for (i = 0; i < N; i++) {if (scanf("%d", &A[i]) != 1) return 1;sum[i] = (i > 0 ? sum[i - 1] : 0) + A[i];}for (i = 0; i < Q; i++) {if (scanf("%d%d", &query[i][0], &query[i][1]) != 2) return 1;if (query[i][0] == 2 && scanf("%d", &query[i][2]) != 1) return 1;}
#include <stdio.h> #include <inttypes.h> int N, Q; int A[212345]; int query[212345][3]; int64_t sum[212345]; int main(void) { int i; int start = 0; if (scanf("%d%d", &N, &Q) != 2) return 1; for (i = 0; i < N; i++) { if (scanf("%d", &A[i]) != 1) return 1; sum[i] = (i > 0 ? sum[i - 1] : 0) + A[i]; } for (i = 0; i < Q; i++) { if (scanf("%d%d", &query[i][0], &query[i][1]) != 2) return 1; if (query[i][0] == 2 && scanf("%d", &query[i][2]) != 1) return 1; } for (i = 0; i < Q; i++) { if (query[i][0] == 1) { start = (start + query[i][1]) % N; } else if (query[i][0] == 2) { int l = (query[i][1] - 1 + start) % N; int r = (query[i][2] - 1 + start) % N; if (l <= r) { printf("%" PRId64 "\n", sum[r] - (l > 0 ? sum[l - 1] : 0)); } else { printf("%" PRId64 "\n", sum[r] + sum[N - 1] - sum[l - 1]); } } } return 0; }
Submission Info
Submission Time | |
---|---|
Task | C - Rotate and Sum Query |
User | mikecat |
Language | C (gcc 12.2.0) |
Score | 350 |
Code Size | 898 Byte |
Status | AC |
Exec Time | 82 ms |
Memory | 8172 KiB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 350 / 350 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00_sample_00.txt, 00_sample_01.txt |
All | 00_sample_00.txt, 00_sample_01.txt, 01_random_00.txt, 01_random_01.txt, 01_random_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 01_random_17.txt, 01_random_18.txt, 01_random_19.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_sample_00.txt | AC | 1 ms | 1632 KiB |
00_sample_01.txt | AC | 1 ms | 1720 KiB |
01_random_00.txt | AC | 1 ms | 1720 KiB |
01_random_01.txt | AC | 27 ms | 4056 KiB |
01_random_02.txt | AC | 46 ms | 4956 KiB |
01_random_03.txt | AC | 27 ms | 4224 KiB |
01_random_04.txt | AC | 39 ms | 4244 KiB |
01_random_05.txt | AC | 66 ms | 6488 KiB |
01_random_06.txt | AC | 37 ms | 4032 KiB |
01_random_07.txt | AC | 65 ms | 6500 KiB |
01_random_08.txt | AC | 55 ms | 5496 KiB |
01_random_09.txt | AC | 65 ms | 6488 KiB |
01_random_10.txt | AC | 53 ms | 5380 KiB |
01_random_11.txt | AC | 65 ms | 6480 KiB |
01_random_12.txt | AC | 45 ms | 6324 KiB |
01_random_13.txt | AC | 45 ms | 6316 KiB |
01_random_14.txt | AC | 79 ms | 7964 KiB |
01_random_15.txt | AC | 82 ms | 7940 KiB |
01_random_16.txt | AC | 74 ms | 7316 KiB |
01_random_17.txt | AC | 55 ms | 6288 KiB |
01_random_18.txt | AC | 57 ms | 8172 KiB |
01_random_19.txt | AC | 43 ms | 6640 KiB |