Submission #67630782
Source Code Expand
Copy
#include <stdio.h>#include <inttypes.h>int Q;int query[212345][3];struct youso_s {int value, num;};struct youso_s A[212345];int main(void) {int i;int qs = 0, qe = 0;if (scanf("%d", &Q) != 1) return 1;for (i = 0; i < Q; i++) {if (scanf("%d%d", &query[i][0], &query[i][1]) != 2) return 1;if (query[i][0] == 1) {if (scanf("%d", &query[i][2]) != 1) return 1;}}
#include <stdio.h> #include <inttypes.h> int Q; int query[212345][3]; struct youso_s { int value, num; }; struct youso_s A[212345]; int main(void) { int i; int qs = 0, qe = 0; if (scanf("%d", &Q) != 1) return 1; for (i = 0; i < Q; i++) { if (scanf("%d%d", &query[i][0], &query[i][1]) != 2) return 1; if (query[i][0] == 1) { if (scanf("%d", &query[i][2]) != 1) return 1; } } for (i = 0; i < Q; i++) { if (query[i][0] == 1) { A[qe++] = (struct youso_s){ query[i][2], query[i][1] }; } else if (query[i][0] == 2) { int64_t ans = 0; int left = query[i][1]; while (left > 0) { if (qs >= qe) return 42; if (left < A[qs].num) { ans += (int64_t)A[qs].value * left; A[qs].num -= left; left = 0; } else { ans += (int64_t)A[qs].value * A[qs].num; left -= A[qs].num; qs++; } } printf("%" PRId64 "\n", ans); } } return 0; }
Submission Info
Submission Time | |
---|---|
Task | C - Large Queue |
User | mikecat |
Language | C (gcc 12.2.0) |
Score | 300 |
Code Size | 945 Byte |
Status | AC |
Exec Time | 48 ms |
Memory | 5648 KiB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 300 / 300 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt |
All | 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_test_00.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00_sample_00.txt | AC | 1 ms | 1716 KiB |
00_sample_01.txt | AC | 1 ms | 1624 KiB |
00_sample_02.txt | AC | 0 ms | 1716 KiB |
01_test_00.txt | AC | 1 ms | 1744 KiB |
01_test_01.txt | AC | 1 ms | 1600 KiB |
01_test_02.txt | AC | 1 ms | 1744 KiB |
01_test_03.txt | AC | 1 ms | 1744 KiB |
01_test_04.txt | AC | 26 ms | 4092 KiB |
01_test_05.txt | AC | 23 ms | 3404 KiB |
01_test_06.txt | AC | 33 ms | 4416 KiB |
01_test_07.txt | AC | 6 ms | 1916 KiB |
01_test_08.txt | AC | 26 ms | 4096 KiB |
01_test_09.txt | AC | 5 ms | 2028 KiB |
01_test_10.txt | AC | 39 ms | 4344 KiB |
01_test_11.txt | AC | 41 ms | 4864 KiB |
01_test_12.txt | AC | 42 ms | 4756 KiB |
01_test_13.txt | AC | 46 ms | 5228 KiB |
01_test_14.txt | AC | 46 ms | 5244 KiB |
01_test_15.txt | AC | 39 ms | 5372 KiB |
01_test_16.txt | AC | 48 ms | 5640 KiB |
01_test_17.txt | AC | 41 ms | 5648 KiB |
01_test_18.txt | AC | 1 ms | 1536 KiB |
01_test_19.txt | AC | 38 ms | 4840 KiB |