Code Submission Evaluation System Login

Datatähti 2016 alku

Start:2015-09-28 00:00:00
End:2015-10-12 00:00:00
 

Tasks | Scoreboard | Statistics


CSES - Datatähti 2016 alku - Results
History
2015-09-29 21:29:030
2015-09-29 16:10:46100
2015-09-29 15:32:2239
2015-09-29 15:27:5439
2015-09-29 15:10:4839
2015-09-29 15:10:1539
2015-09-29 15:09:1939
2015-09-29 14:27:4539
Task:Osajono
Sender:Razbit
Submission time:2015-09-29 15:27:54
Language:C++
Status:READY
Score:39

Feedback

groupverdictscore
#1ACCEPTED12
#2ACCEPTED27
#3WRONG ANSWER0

Test results

testverdicttime (s)group
#1ACCEPTED0.05 / 1.001details
#2ACCEPTED0.13 / 1.001details
#3ACCEPTED0.05 / 1.001details
#4ACCEPTED0.05 / 1.001details
#5ACCEPTED0.06 / 1.001details
#6ACCEPTED0.06 / 1.002details
#7ACCEPTED0.05 / 1.002details
#8ACCEPTED0.06 / 1.002details
#9ACCEPTED0.06 / 1.002details
#10ACCEPTED0.06 / 1.002details
#11WRONG ANSWER0.06 / 1.003details
#12ACCEPTED0.05 / 1.003details
#13WRONG ANSWER0.05 / 1.003details
#14WRONG ANSWER0.05 / 1.003details
#15WRONG ANSWER0.05 / 1.003details

Compiler report

input/code.cpp: In function 'int main()':
input/code.cpp:17:21: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%s", buf);
                     ^

Code

/* Osajono.cpp -- Datatahti 2016 tehtava osajono
 *
 * Eetu "Razbit" Pesonen, 2015
 */

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

using namespace std;

int main()
{
    // Max input string length 10^5
    char* buf = (char*)malloc(100010 * sizeof(char));
    scanf("%s", buf);

    unsigned int i = 0;
    while (buf[i])
    {
        buf[i] = toupper(buf[i]);
        i++;
    }

    // for counting occurences
    int* table = (int*)malloc(128 * sizeof(int));
    memset(table, 0, 128);
    
    // Even one character counts as a substr
    int num = strlen(buf);

    // Count occurences of each char in the string
    for(i = 0; i < strlen(buf); i++)
    {
        table[(unsigned int)buf[i]] += 1;
    }

    int n;
    for(i = 0; i < 128; i++)
    {
        n = table[i];
        if (n)
            num += (n*n-n)/2;
    }

    printf("%i\n", num);

    free(buf);
    free(table);
    
    return 0;
}

Test details

Test 1

Group: 1

Verdict: ACCEPTED

input
BBBAABBBAAAABBAAAABAABAABBBBBB...
view   save

correct output
2554

view   save

user output
2554

view   save

Test 2

Group: 1

Verdict: ACCEPTED

input
GDFVYWQCZAFGICSXOSWBZMGPDBSSVL...
view   save

correct output
299

view   save

user output
299

view   save

Test 3

Group: 1

Verdict: ACCEPTED

input
AAAAAAAAAAAAAAAAAAAAAAAAAZAAAA...
view   save

correct output
4314

view   save

user output
4314

view   save

Test 4

Group: 1

Verdict: ACCEPTED

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
view   save

correct output
4231

view   save

user output
4231

view   save

Test 5

Group: 1

Verdict: ACCEPTED

input
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ...
view   save

correct output
5050

view   save

user output
5050

view   save

Test 6

Group: 2

Verdict: ACCEPTED

input
BBABABBBABBAABBABBABAABAAABABA...
view   save

correct output
6253029

view   save

user output
6253029

view   save

Test 7

Group: 2

Verdict: ACCEPTED

input
RBKJMLDVQMKHYKCNDIVVKOMFUXTFMG...
view   save

correct output
485173

view   save

user output
485173

view   save

Test 8

Group: 2

Verdict: ACCEPTED

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
view   save

correct output
12427725

view   save

user output
12427725

view   save

Test 9

Group: 2

Verdict: ACCEPTED

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
view   save

correct output
12467549

view   save

user output
12467549

view   save

Test 10

Group: 2

Verdict: ACCEPTED

input
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ...
view   save

correct output
12502500

view   save

user output
12502500

view   save

Test 11

Group: 3

Verdict: WRONG ANSWER

input
BAAAAABABBABAABAABABABBBABBAAB...
view   save

correct output
2500051369

view   save

user output
-1794915927

view   save

Test 12

Group: 3

Verdict: ACCEPTED

input
ABBURXDRVXAYBPXXOQZNYHLWGUEEWR...
view   save

correct output
192407124

view   save

user output
192407124

view   save

Test 13

Group: 3

Verdict: WRONG ANSWER

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
view   save

correct output
4998050400

view   save

user output
703083104

view   save

Test 14

Group: 3

Verdict: WRONG ANSWER

input
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...
view   save

correct output
4998850144

view   save

user output
703882848

view   save

Test 15

Group: 3

Verdict: WRONG ANSWER

input
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ...
view   save

correct output
5000050000

view   save

user output
705082704

view   save