Submission #984464

# Submission time Handle Problem Language Result Execution time Memory
984464 2024-05-16T17:08:19 Z Mizo_Compiler Genetics (BOI18_genetics) C++17
46 / 100
2000 ms 42508 KB
#include <bits/stdc++.h>
using namespace std;
#pragma GCC optimize("Ofast,unroll-loops")
//#pragma GCC target("popcnt")
typedef long long ll;
#define pb push_back
#define F first
#define S second
#define all(x) x.begin(),x.end()
#define sz(x) int(x.size())
const int N = 4100;
int n, m, k, id[30], c[N][N], lim = 4;
bitset<N> b[N][4];
 
int main() {
    ios::sync_with_stdio(false);
    cin.tie(nullptr);
    cin >> n >> m >> k;
    id[int('A'-'A')] = 0;
    id[int('G'-'A')] = 2;
    id[int('T'-'A')] = 3;
    id[int('C'-'A')] = 1;
    for (int i = 0; i < n; i++) {
        string s;
        cin >> s;
        for (int j = 0; j < m; j++) {
            b[i][id[int(s[j]-'A')]][j] = true;
        }
        for (int j = i-1; j >= 0; j--) {
            for (int kk = 0; kk < lim; kk++) {
                c[i][j] += (b[i][kk] & b[j][kk]).count();
            }
            c[j][i] = c[i][j];
        }
    }
    for (int i = 0; i < n; i++) {
        bool f = true;
        for (int j = 0; j < n && f; j++) {
            if (j == i)continue;
            f &= (c[i][j] == m-k);
        }
        if (f) {
            cout << i+1;
            return 0;
        }
    }
}
# Verdict Execution time Memory Grader output
1 Correct 3 ms 856 KB Output is correct
2 Correct 4 ms 860 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 2 ms 860 KB Output is correct
5 Correct 4 ms 860 KB Output is correct
6 Correct 4 ms 860 KB Output is correct
7 Correct 1 ms 856 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 2 ms 860 KB Output is correct
10 Correct 4 ms 860 KB Output is correct
11 Correct 3 ms 860 KB Output is correct
12 Correct 4 ms 860 KB Output is correct
13 Correct 4 ms 860 KB Output is correct
14 Correct 4 ms 860 KB Output is correct
15 Correct 4 ms 860 KB Output is correct
16 Correct 4 ms 896 KB Output is correct
17 Correct 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 846 ms 21328 KB Output is correct
2 Correct 1194 ms 26336 KB Output is correct
3 Correct 1075 ms 25116 KB Output is correct
4 Correct 481 ms 15184 KB Output is correct
5 Correct 1197 ms 26540 KB Output is correct
6 Correct 1194 ms 26352 KB Output is correct
7 Correct 216 ms 8340 KB Output is correct
8 Correct 215 ms 8304 KB Output is correct
9 Correct 1139 ms 25336 KB Output is correct
10 Correct 1163 ms 25104 KB Output is correct
11 Correct 839 ms 21252 KB Output is correct
12 Correct 846 ms 21420 KB Output is correct
13 Correct 853 ms 21348 KB Output is correct
14 Correct 639 ms 17804 KB Output is correct
15 Correct 627 ms 17864 KB Output is correct
16 Correct 806 ms 20428 KB Output is correct
17 Correct 1087 ms 25096 KB Output is correct
18 Correct 1087 ms 24900 KB Output is correct
19 Correct 1093 ms 25172 KB Output is correct
20 Correct 1105 ms 24700 KB Output is correct
21 Correct 1083 ms 24920 KB Output is correct
22 Correct 1110 ms 24788 KB Output is correct
23 Correct 1113 ms 25156 KB Output is correct
24 Correct 1139 ms 24888 KB Output is correct
25 Correct 1118 ms 24724 KB Output is correct
26 Correct 1101 ms 24904 KB Output is correct
27 Correct 1137 ms 24792 KB Output is correct
28 Correct 1097 ms 24908 KB Output is correct
29 Correct 1141 ms 24984 KB Output is correct
30 Correct 1252 ms 26364 KB Output is correct
31 Correct 1187 ms 26396 KB Output is correct
32 Correct 1194 ms 26428 KB Output is correct
33 Correct 1 ms 344 KB Output is correct
34 Correct 4 ms 856 KB Output is correct
35 Correct 0 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 846 ms 21328 KB Output is correct
2 Correct 1194 ms 26336 KB Output is correct
3 Correct 1075 ms 25116 KB Output is correct
4 Correct 481 ms 15184 KB Output is correct
5 Correct 1197 ms 26540 KB Output is correct
6 Correct 1194 ms 26352 KB Output is correct
7 Correct 216 ms 8340 KB Output is correct
8 Correct 215 ms 8304 KB Output is correct
9 Correct 1139 ms 25336 KB Output is correct
10 Correct 1163 ms 25104 KB Output is correct
11 Correct 839 ms 21252 KB Output is correct
12 Correct 846 ms 21420 KB Output is correct
13 Correct 853 ms 21348 KB Output is correct
14 Correct 639 ms 17804 KB Output is correct
15 Correct 627 ms 17864 KB Output is correct
16 Correct 806 ms 20428 KB Output is correct
17 Correct 1087 ms 25096 KB Output is correct
18 Correct 1087 ms 24900 KB Output is correct
19 Correct 1093 ms 25172 KB Output is correct
20 Correct 1105 ms 24700 KB Output is correct
21 Correct 1083 ms 24920 KB Output is correct
22 Correct 1110 ms 24788 KB Output is correct
23 Correct 1113 ms 25156 KB Output is correct
24 Correct 1139 ms 24888 KB Output is correct
25 Correct 1118 ms 24724 KB Output is correct
26 Correct 1101 ms 24904 KB Output is correct
27 Correct 1137 ms 24792 KB Output is correct
28 Correct 1097 ms 24908 KB Output is correct
29 Correct 1141 ms 24984 KB Output is correct
30 Correct 1252 ms 26364 KB Output is correct
31 Correct 1187 ms 26396 KB Output is correct
32 Correct 1194 ms 26428 KB Output is correct
33 Correct 1 ms 344 KB Output is correct
34 Correct 4 ms 856 KB Output is correct
35 Correct 0 ms 348 KB Output is correct
36 Execution timed out 2085 ms 42508 KB Time limit exceeded
37 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 3 ms 856 KB Output is correct
2 Correct 4 ms 860 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 2 ms 860 KB Output is correct
5 Correct 4 ms 860 KB Output is correct
6 Correct 4 ms 860 KB Output is correct
7 Correct 1 ms 856 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 2 ms 860 KB Output is correct
10 Correct 4 ms 860 KB Output is correct
11 Correct 3 ms 860 KB Output is correct
12 Correct 4 ms 860 KB Output is correct
13 Correct 4 ms 860 KB Output is correct
14 Correct 4 ms 860 KB Output is correct
15 Correct 4 ms 860 KB Output is correct
16 Correct 4 ms 896 KB Output is correct
17 Correct 1 ms 348 KB Output is correct
18 Correct 846 ms 21328 KB Output is correct
19 Correct 1194 ms 26336 KB Output is correct
20 Correct 1075 ms 25116 KB Output is correct
21 Correct 481 ms 15184 KB Output is correct
22 Correct 1197 ms 26540 KB Output is correct
23 Correct 1194 ms 26352 KB Output is correct
24 Correct 216 ms 8340 KB Output is correct
25 Correct 215 ms 8304 KB Output is correct
26 Correct 1139 ms 25336 KB Output is correct
27 Correct 1163 ms 25104 KB Output is correct
28 Correct 839 ms 21252 KB Output is correct
29 Correct 846 ms 21420 KB Output is correct
30 Correct 853 ms 21348 KB Output is correct
31 Correct 639 ms 17804 KB Output is correct
32 Correct 627 ms 17864 KB Output is correct
33 Correct 806 ms 20428 KB Output is correct
34 Correct 1087 ms 25096 KB Output is correct
35 Correct 1087 ms 24900 KB Output is correct
36 Correct 1093 ms 25172 KB Output is correct
37 Correct 1105 ms 24700 KB Output is correct
38 Correct 1083 ms 24920 KB Output is correct
39 Correct 1110 ms 24788 KB Output is correct
40 Correct 1113 ms 25156 KB Output is correct
41 Correct 1139 ms 24888 KB Output is correct
42 Correct 1118 ms 24724 KB Output is correct
43 Correct 1101 ms 24904 KB Output is correct
44 Correct 1137 ms 24792 KB Output is correct
45 Correct 1097 ms 24908 KB Output is correct
46 Correct 1141 ms 24984 KB Output is correct
47 Correct 1252 ms 26364 KB Output is correct
48 Correct 1187 ms 26396 KB Output is correct
49 Correct 1194 ms 26428 KB Output is correct
50 Correct 1 ms 344 KB Output is correct
51 Correct 4 ms 856 KB Output is correct
52 Correct 0 ms 348 KB Output is correct
53 Execution timed out 2085 ms 42508 KB Time limit exceeded
54 Halted 0 ms 0 KB -