Submission #1078644

# Submission time Handle Problem Language Result Execution time Memory
1078644 2024-08-28T02:38:35 Z khactrung1912 Lozinke (COCI17_lozinke) C++14
45 / 100
1000 ms 1368 KB
#include <iostream>
#include <algorithm>

using namespace std;

struct Trie {
    struct Node {
        Node *child[26];
        int cnt, exist;

        Node() {
            cnt = exist = 0;
            for (int i = 0; i < 26; ++i)
                child[i] = NULL;
        }
    };
    
    int cur;
    Node *root;
    Trie() : cur(0) {
        root = new Node();
    }

    void add_str(string s) {
        Node *p = root;
        for (char c : s) {
            c -= 'a';

            if (p->child[c] == NULL)
                p->child[c] = new Node();

            p = p->child[c];
            p->cnt++;
        }

        p->exist++;
    }
};

int n;
string a[20022];

namespace sub1 {
    int res = 0;

    void solve() {
        for (int i = 1; i <= n; ++i)
            for (int j = 1; j <= n; ++j)
                if (i != j &&  a[i].find(a[j]) <= 10)
                    ++res; 
        
        cout << res;
    }
}

int main() {
    ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);

    cin >> n;
    for (int i = 1; i <= n; ++i)
        cin >> a[i];

    sort(a+1, a+n+1, [](string &s1, string &s2) {
        return s1.size() > s2.size();
    });


    sub1::solve();
}

Compilation message

lozinke.cpp: In member function 'void Trie::add_str(std::string)':
lozinke.cpp:29:26: warning: array subscript has type 'char' [-Wchar-subscripts]
   29 |             if (p->child[c] == NULL)
      |                          ^
lozinke.cpp:30:26: warning: array subscript has type 'char' [-Wchar-subscripts]
   30 |                 p->child[c] = new Node();
      |                          ^
lozinke.cpp:32:26: warning: array subscript has type 'char' [-Wchar-subscripts]
   32 |             p = p->child[c];
      |                          ^
# Verdict Execution time Memory Grader output
1 Correct 1 ms 856 KB Output is correct
2 Correct 1 ms 860 KB Output is correct
3 Correct 1 ms 1088 KB Output is correct
4 Correct 3 ms 860 KB Output is correct
5 Correct 12 ms 860 KB Output is correct
6 Correct 27 ms 860 KB Output is correct
7 Correct 42 ms 860 KB Output is correct
8 Correct 32 ms 860 KB Output is correct
9 Execution timed out 1066 ms 1116 KB Time limit exceeded
10 Correct 945 ms 1360 KB Output is correct
11 Execution timed out 1036 ms 1112 KB Time limit exceeded
12 Execution timed out 1063 ms 1200 KB Time limit exceeded
13 Execution timed out 1061 ms 1116 KB Time limit exceeded
14 Execution timed out 1079 ms 1112 KB Time limit exceeded
15 Execution timed out 1055 ms 1368 KB Time limit exceeded
16 Execution timed out 1014 ms 1112 KB Time limit exceeded
17 Execution timed out 1059 ms 1116 KB Time limit exceeded
18 Execution timed out 1072 ms 1116 KB Time limit exceeded
19 Execution timed out 1008 ms 1112 KB Time limit exceeded
20 Execution timed out 1071 ms 1116 KB Time limit exceeded