Submission #70169278
Source Code Expand
Copy
#include <stdio.h>#define BIT_MAX 1123456int bit_table[BIT_MAX];void bit_add(int pos, int value) {pos++;while (pos <= BIT_MAX) {bit_table[pos - 1] += value;pos += pos & (-pos);}}int bit_sum(int pos) {int sum = 0;pos++;while (pos > 0) {sum += bit_table[pos - 1];pos -= pos & (-pos);}
#include <stdio.h>
#define BIT_MAX 1123456
int bit_table[BIT_MAX];
void bit_add(int pos, int value) {
pos++;
while (pos <= BIT_MAX) {
bit_table[pos - 1] += value;
pos += pos & (-pos);
}
}
int bit_sum(int pos) {
int sum = 0;
pos++;
while (pos > 0) {
sum += bit_table[pos - 1];
pos -= pos & (-pos);
}
return sum;
}
int N, Q;
int X[212345], Y[212345];
int main(void) {
int i;
int cut = 0;
if (scanf("%d%d", &N, &Q) != 2) return 1;
for (i = 0; i < Q; i++) {
if (scanf("%d%d", &X[i], &Y[i]) != 2) return 1;
}
for (i = 1; i <= N; i++) {
bit_add(i, 1);
}
for (i = 0; i < Q; i++) {
if (X[i] > cut) {
int ans = bit_sum(X[i]) - bit_sum(cut);
bit_add(Y[i], ans);
cut = X[i];
printf("%d\n", ans);
} else {
puts("0");
}
}
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | C - Upgrade Required |
| User | mikecat |
| Language | C (gcc 12.2.0) |
| Score | 300 |
| Code Size | 831 Byte |
| Status | AC |
| Exec Time | 54 ms |
| Memory | 7224 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 300 / 300 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | sample_01.txt |
| All | hand_01.txt, hand_02.txt, hand_03.txt, sample_01.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| hand_01.txt | AC | 48 ms | 7184 KiB |
| hand_02.txt | AC | 49 ms | 7212 KiB |
| hand_03.txt | AC | 52 ms | 7100 KiB |
| sample_01.txt | AC | 1 ms | 1644 KiB |
| test_01.txt | AC | 1 ms | 1776 KiB |
| test_02.txt | AC | 47 ms | 7116 KiB |
| test_03.txt | AC | 46 ms | 7064 KiB |
| test_04.txt | AC | 47 ms | 7116 KiB |
| test_05.txt | AC | 49 ms | 7112 KiB |
| test_06.txt | AC | 50 ms | 7128 KiB |
| test_07.txt | AC | 50 ms | 7136 KiB |
| test_08.txt | AC | 49 ms | 7220 KiB |
| test_09.txt | AC | 49 ms | 7132 KiB |
| test_10.txt | AC | 21 ms | 3332 KiB |
| test_11.txt | AC | 21 ms | 3340 KiB |
| test_12.txt | AC | 21 ms | 3236 KiB |
| test_13.txt | AC | 21 ms | 3220 KiB |
| test_14.txt | AC | 49 ms | 7196 KiB |
| test_15.txt | AC | 44 ms | 7200 KiB |
| test_16.txt | AC | 47 ms | 7080 KiB |
| test_17.txt | AC | 46 ms | 7132 KiB |
| test_18.txt | AC | 44 ms | 7116 KiB |
| test_19.txt | AC | 47 ms | 7080 KiB |
| test_20.txt | AC | 54 ms | 7064 KiB |
| test_21.txt | AC | 51 ms | 7224 KiB |
| test_22.txt | AC | 45 ms | 7112 KiB |