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;
}
}
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
#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
AC × 3
AC × 23
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


2025-07-16 (Wed)
05:33:43 +09:00