CSES - Datatähti 2016 alku - Results
Submission details
Task:Osajono
Sender:RemoveForce
Submission time:2015-10-05 17:33:34 +0300
Language:C++
Status:READY
Result:39
Feedback
groupverdictscore
#1ACCEPTED12
#2ACCEPTED27
#30
Test results
testverdicttimegroup
#1ACCEPTED0.06 s1details
#2ACCEPTED0.05 s1details
#3ACCEPTED0.05 s1details
#4ACCEPTED0.06 s1details
#5ACCEPTED0.05 s1details
#6ACCEPTED0.08 s2details
#7ACCEPTED0.07 s2details
#8ACCEPTED0.08 s2details
#9ACCEPTED0.08 s2details
#10ACCEPTED0.07 s2details
#11--3details
#12--3details
#13--3details
#14--3details
#15--3details

Code

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

char* input;
unsigned counter;

void copy(size_t size, char *src, char *dest)
{
  for (size_t i = 0; i < size; ++i)
    dest[i] = src[i];
}

void readInput()
{
  size_t size = 8, used = 0;
  input = (char*) malloc(size);
  goto read;
 reserve:;
  {
    size *= 2;
    char* new_input = (char*) malloc(size);
    copy(used, input, new_input);
    free(input);
    input = new_input;
  }
 read:;
  char c = fgetc(stdin);
  if (c == '\n' || c == EOF)
    goto end;
  input[used++] = c;
  if (used == size)
    goto reserve;
  goto read;
 end:;
  input[used] = '\0';
}

void getResults()
{
  size_t size = strlen(input);
  for (size_t i = 0; i < size; ++i)
    for (size_t j = 0; j < size - i; ++j)
      //printf("%c == %c", input[j], input[j + i]);
      if (input[j] == input[j + i])
	++counter;
}

int main()
{
  readInput();
  getResults();
  printf("%d\n", counter);
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
BBBAABBBAAAABBAAAABAABAABBBBBB...

correct output
2554

user output
2554

Test 2

Group: 1

Verdict: ACCEPTED

input
GDFVYWQCZAFGICSXOSWBZMGPDBSSVL...

correct output
299

user output
299

Test 3

Group: 1

Verdict: ACCEPTED

input
AAAAAAAAAAAAAAAAAAAAAAAAAZAAAA...

correct output
4314

user output
4314

Test 4

Group: 1

Verdict: ACCEPTED

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
4231

user output
4231

Test 5

Group: 1

Verdict: ACCEPTED

input
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ...

correct output
5050

user output
5050

Test 6

Group: 2

Verdict: ACCEPTED

input
BBABABBBABBAABBABBABAABAAABABA...

correct output
6253029

user output
6253029

Test 7

Group: 2

Verdict: ACCEPTED

input
RBKJMLDVQMKHYKCNDIVVKOMFUXTFMG...

correct output
485173

user output
485173

Test 8

Group: 2

Verdict: ACCEPTED

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
12427725

user output
12427725

Test 9

Group: 2

Verdict: ACCEPTED

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
12467549

user output
12467549

Test 10

Group: 2

Verdict: ACCEPTED

input
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ...

correct output
12502500

user output
12502500

Test 11

Group: 3

Verdict:

input
BAAAAABABBABAABAABABABBBABBAAB...

correct output
2500051369

user output
(empty)

Test 12

Group: 3

Verdict:

input
ABBURXDRVXAYBPXXOQZNYHLWGUEEWR...

correct output
192407124

user output
(empty)

Test 13

Group: 3

Verdict:

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
4998050400

user output
(empty)

Test 14

Group: 3

Verdict:

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...

correct output
4998850144

user output
(empty)

Test 15

Group: 3

Verdict:

input
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ...

correct output
5000050000

user output
(empty)