Submission #1228328

#TimeUsernameProblemLanguageResultExecution timeMemory
1228328bornagDNA 돌연변이 (IOI21_dna)C++20
Compilation error
0 ms0 KiB
#include <bits/stdc++.h>
using namespace std;

#define int long long

const int MAXN = 1e5 + 7;

int pref[MAXN][7][10];
int same[MAXN];

void init(string a, string b) {
	
	for(int i = 0; i < a.size(); i++) {
		for(int j = 0; j < 2; j++)
			for(int k = 0; k < 3; k++)
				pref[i + 1][j][k] += pref[i][j][k];
				
		pref[i + 1][1][(b[i] == 'A' ? 0 : (b[i] == 'C' ? 1 : 2))]++;
		pref[i + 1][0][(a[i] == 'A' ? 0 : (a[i] == 'C' ? 1 : 2))]++;
		same[i + 1] = same[i] + !(a[i] == b[i]);
	}
}

int get_distance(int x, int y) {
	x++, y++;
	if(pref[y][1][0] - pref[x - 1][1][0] != pref[y][0][0] - pref[x - 1][0][0]
		|| pref[y][1][1] - pref[x - 1][1][1] != pref[y][0][1] - pref[x - 1][0][1]
		|| pref[y][1][2] - pref[x - 1][1][2] != pref[y][0][2] - pref[x - 1][0][2])
			return -1;
	
	return (same[y] - same[x - 1]) / 2 + ((same[y] - same[x - 1]) % 2);
}

Compilation message (stderr)

/usr/bin/ld: /tmp/cc3rXKBo.o: in function `main':
grader.cpp:(.text.startup+0x39a): undefined reference to `get_distance(int, int)'
collect2: error: ld returned 1 exit status