Submission #548924

#TimeUsernameProblemLanguageResultExecution timeMemory
548924SlyGaleebMutating DNA (IOI21_dna)C++17
0 / 100
41 ms2368 KiB
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define ld long double
#define vf v[i].first
#define vs v[i].second
const ll MOD = 1e9 + 7;

void print(vector<ll> &v) {
	for (auto c:v)
		cout << c << " ";
	cout << "\n";
}

int n;
string c,d;

void init(string a, string b) {
	n = a.size();
	c = a;
	d = b;
}

int get_distance(int x, int y) {
	int ans = 0;
	string t1 = c.substr(x,y-x+1), t2 = d.substr(x,y-x+1);
	sort(t1.begin(),t1.end());
	sort(t2.begin(),t2.end());
	if (t1!=t2)
		return -1;
	t1 = c.substr(x,y-x+1), t2 = d.substr(x,y-x+1);
	int temp;
	for (int i = 0; i < y-x+1; ++i) {
		if (t1[i]!=t2[i]) {
			for (int j = i; j < y-x+1; ++j) {
				if (t1[j]==t2[i]) {
					temp = j;
					break;
				}
			}
			swap(t1[i],t1[temp]);
			++ans;
		}
	}
	return ans;
}

/*int main()
{
	ios_base::sync_with_stdio(false);
	cin.tie(NULL);
	string a,b;
	cin >> a >> b;
	init(a,b);
	cout << get_distance(0,2);
}*/

Compilation message (stderr)

dna.cpp: In function 'int get_distance(int, int)':
dna.cpp:41:22: warning: 'temp' may be used uninitialized in this function [-Wmaybe-uninitialized]
   41 |    swap(t1[i],t1[temp]);
      |                      ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...