Submission #1106622

#TimeUsernameProblemLanguageResultExecution timeMemory
1106622kheiraMutating DNA (IOI21_dna)C++17
Compilation error
0 ms0 KiB
#include "dna.h" using namespace std; vector<int> A_a, C_a, T_a; vector<int> A_b, C_b, T_b; void init(string a, string b) { int n = a.size(); A_a = C_a = T_a = vector<int>(n + 1, 0); A_b = C_b = T_b = vector<int>(n + 1, 0); for (int i = 1; i <= n; ++i) { A_a[i] = A_a[i - 1] + (a[i - 1] == 'A'); C_a[i] = C_a[i - 1] + (a[i - 1] == 'C'); T_a[i] = T_a[i - 1] + (a[i - 1] == 'T'); A_b[i] = A_b[i - 1] + (b[i - 1] == 'A'); C_b[i] = C_b[i - 1] + (b[i - 1] == 'C'); T_b[i] = T_b[i - 1] + (b[i - 1] == 'T'); } } int get_distance(int x, int y) { int a_count_A = A_a[y + 1] - A_a[x]; int a_count_C = C_a[y + 1] - C_a[x]; int a_count_T = T_a[y + 1] - T_a[x]; int b_count_A = A_b[y + 1] - A_b[x]; int b_count_C = C_b[y + 1] - C_b[x]; int b_count_T = T_b[y + 1] - T_b[x]; if (a_count_A != b_count_A || a_count_C != b_count_C || a_count_T != b_count_T) { return -1; } int makanch_AC = abs(a_count_A - b_count_A); int makanch_AT = abs(a_count_A - b_count_T); int makanch_CT = abs(a_count_C - b_count_T); int direct_swaps = makanch_AC / 2 + makanch_AT / 2 + makanch_CT / 2; int two_step_swaps = (makanch_AC % 2) + (makanch_AT % 2) + (makanch_CT % 2); return direct_swaps + 2 * two_step_swaps; }

Compilation message (stderr)

dna.cpp:4:1: error: 'vector' does not name a type
    4 | vector<int> A_a, C_a, T_a;
      | ^~~~~~
dna.cpp:5:1: error: 'vector' does not name a type
    5 | vector<int> A_b, C_b, T_b;
      | ^~~~~~
dna.cpp: In function 'void init(std::string, std::string)':
dna.cpp:9:5: error: 'A_a' was not declared in this scope
    9 |     A_a = C_a = T_a = vector<int>(n + 1, 0);
      |     ^~~
dna.cpp:9:11: error: 'C_a' was not declared in this scope
    9 |     A_a = C_a = T_a = vector<int>(n + 1, 0);
      |           ^~~
dna.cpp:9:17: error: 'T_a' was not declared in this scope
    9 |     A_a = C_a = T_a = vector<int>(n + 1, 0);
      |                 ^~~
dna.cpp:9:23: error: 'vector' was not declared in this scope
    9 |     A_a = C_a = T_a = vector<int>(n + 1, 0);
      |                       ^~~~~~
dna.cpp:2:1: note: 'std::vector' is defined in header '<vector>'; did you forget to '#include <vector>'?
    1 | #include "dna.h"
  +++ |+#include <vector>
    2 | using namespace std;
dna.cpp:9:30: error: expected primary-expression before 'int'
    9 |     A_a = C_a = T_a = vector<int>(n + 1, 0);
      |                              ^~~
dna.cpp:10:5: error: 'A_b' was not declared in this scope
   10 |     A_b = C_b = T_b = vector<int>(n + 1, 0);
      |     ^~~
dna.cpp:10:11: error: 'C_b' was not declared in this scope
   10 |     A_b = C_b = T_b = vector<int>(n + 1, 0);
      |           ^~~
dna.cpp:10:17: error: 'T_b' was not declared in this scope
   10 |     A_b = C_b = T_b = vector<int>(n + 1, 0);
      |                 ^~~
dna.cpp:10:30: error: expected primary-expression before 'int'
   10 |     A_b = C_b = T_b = vector<int>(n + 1, 0);
      |                              ^~~
dna.cpp: In function 'int get_distance(int, int)':
dna.cpp:24:21: error: 'A_a' was not declared in this scope
   24 |     int a_count_A = A_a[y + 1] - A_a[x];
      |                     ^~~
dna.cpp:25:21: error: 'C_a' was not declared in this scope
   25 |     int a_count_C = C_a[y + 1] - C_a[x];
      |                     ^~~
dna.cpp:26:21: error: 'T_a' was not declared in this scope
   26 |     int a_count_T = T_a[y + 1] - T_a[x];
      |                     ^~~
dna.cpp:28:21: error: 'A_b' was not declared in this scope
   28 |     int b_count_A = A_b[y + 1] - A_b[x];
      |                     ^~~
dna.cpp:29:21: error: 'C_b' was not declared in this scope
   29 |     int b_count_C = C_b[y + 1] - C_b[x];
      |                     ^~~
dna.cpp:30:21: error: 'T_b' was not declared in this scope
   30 |     int b_count_T = T_b[y + 1] - T_b[x];
      |                     ^~~