Pagini recente » Cod sursa (job #645250) | Cod sursa (job #2847243) | Cod sursa (job #3143059) | Cod sursa (job #609388) | Cod sursa (job #2718463)
#include <stdio.h>
#include <stdint.h>
void read_int32_t(FILE *__restrict stream, int32_t *__restrict nr) {
uint8_t ch;
*nr = 0;
uint8_t neg = 0;
ch = fgetc(stream);
if (ch == '-') {
neg = 1;
} else if ('0' <= ch && ch <= '9') {
*nr = ch - '0';
} else {
if (ch == '\r') {
fgetc(stream);
}
return;
}
while ((ch = fgetc(stream)) && ('0' <= ch && ch <= '9')) {
*nr *= 10;
*nr += ch - '0';
}
if (neg) {
*nr = -*nr;
}
if (ch == '\r') {
fgetc(stream);
}
}
int main() {
int32_t n;
int64_t sum = 0;
{
FILE *__restrict in = fopen("aria.in", "r");
read_int32_t(in, &n);
{
int32_t i;
int32_t sx, sy;
int32_t y1, y2;
int32_t x1, x2;
read_int32_t(in, &sx);
read_int32_t(in, &sy);
x2 = sx;
y2 = sy;
for (i = 1; i < n; ++i) {
x1 = x2;
y1 = y2;
read_int32_t(in, &x2);
read_int32_t(in, &y2);
sum += (y1 + y2) * (x2 - x1);
}
sum += (y2 + sy) * (x2 - sx);
}
fclose(in);
}
if (sum < 0) {
sum = -sum;
}
{
FILE *__restrict out = fopen("aria.out", "w");
fprintf(out, "%0.5f", (double) sum / 2);
fclose(out);
}
return 0;
}