blob: f93eb9465ae088aa19db3ec677071e8ebf6d71f9 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main (void) {
char buf[1024];
double z = 0;
fgets(buf, 1024, stdin); /* prva vrstica ni potrebna */
fgets(buf, 1024, stdin);
while (!feof(stdin)) { /* gremo čez vsako vrstico */
int i = 0; /* indeks */
int m = 1; /* trenutni imenovalec */
do {
m *= 2; /* povečamo trenutni imenovalec */
if (buf[i] == 'S') {
z += 1 / (double) m; /* povečamo za trenutno velikost kosa */
/* fprintf(stderr, "sadi, %d, %f\n", m, z); */
}
i++;
} while (buf[i-1] != '\n' && buf[i-1] != 0 && buf[i-1] != '\r'); /* konec vhoda */
fgets(buf, 1024, stdin); /* poberemo novo vrstico */
}
printf("%d\n", (int) ceil(z)); /* izpišemo vrednost, zaokroženo navzgor */
return 0; /* končamo program */
}
|