Submission #1001958

#TimeUsernameProblemLanguageResultExecution timeMemory
1001958hacizadalMutating DNA (IOI21_dna)C++17
43 / 100
1549 ms4724 KiB
#include "dna.h" #include <bits/stdc++.h> using namespace std; #define endl '\n' #define ll long long #define pll pair<ll, ll> string s, t; ll p[100005]; void init(std::string a, std::string b) { s = a; t = b; for (ll i = 0; i<s.length(); i++){ p[i+1] = p[i]; if (s[i] != t[i]) p[i+1]++; } } int get_distance(int x, int y) { string k = s.substr(x, y-x+1); string g = t.substr(x, y-x+1); string a = k; string b = g; sort(a.begin(), a.end()); sort(b.begin(), b.end()); if (a != b){ return -1; } if (k == g){ return 0; } if (y - x <= 2){ if (k[1] == g[1] or k[0] == g[0] or k[2] == g[2]){ return 1; } else { return 2; } } ll cnt = p[y+1] - p[x]; cnt /= 2; return cnt; }

Compilation message (stderr)

dna.cpp: In function 'void init(std::string, std::string)':
dna.cpp:14:21: warning: comparison of integer expressions of different signedness: 'long long int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   14 |     for (ll i = 0; i<s.length(); i++){
      |                    ~^~~~~~~~~~~
#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...