제출 #1142118

#제출 시각아이디문제언어결과실행 시간메모리
1142118rayankDNA 돌연변이 (IOI21_dna)C++20
0 / 100
1592 ms2500 KiB
#include "dna.h" #include <bits/stdc++.h> using namespace std; //test case 1 string A; string B; void init(string a, string b) { A = a; B = b; } int find_pos(int k, vector<int> nums){ for(int i = 0; i < nums.size(); i++){ if(nums[i] == k){ return i; } } return -1; } vector<int> string_to_int(string s){ map<char, int> nums; vector<int> res; nums['A'] = 0; nums['C'] = 1; nums['T'] = 2; for(int i = 0; i < s.size(); i++){ res.push_back(nums[s[i]]); } return res; } int get_distance(int x, int y) { string a = A.substr(x,y); string b = B.substr(x,y); string acopy = A.substr(x,y); string bcopy = B.substr(x,y); long long res = 0; long long Acounta = 0; long long Ccounta = 0; long long Tcounta = 0; long long Acountb = 0; long long Ccountb = 0; long long Tcountb = 0; for(int i = 0; i < a.size(); i++){ if(a[i] != b[i]){ res++; } if(a[i] == 'A') Acounta++; if(a[i] == 'T') Tcounta++; if(a[i] == 'C') Ccounta++; if(b[i] == 'A') Acountb++; if(b[i] == 'T') Tcountb++; if(b[i] == 'C') Ccountb++; } if(Acounta != Acountb || Ccounta != Ccountb || Tcounta != Tcountb){ return -1; } return (res+1)/2; }
#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...