제출 #612342

#제출 시각아이디문제언어결과실행 시간메모리
612342PanTkdDNA 돌연변이 (IOI21_dna)C++17
35 / 100
52 ms6192 KiB
// // main.cpp // // Created by Panagiotis Chadjicostas on // Copyright © Panagiotis Hadjicostas. All rights reserved. // #include <iostream> #include <algorithm> #include <bitset> #include <complex> #include <deque> #include <fstream> #include <iomanip> #include <iterator> #include <limits> #include <list> #include <cstring> #include <map> #include <queue> #include <set> #include <stack> #include <string> #include <vector> #include <unordered_map> using namespace std; typedef long long ll; typedef vector<ll> vi; typedef pair<ll,ll> ii; #define fo(i,a,b) for(int i = a; i<=b; i++) #define f(i,b) for(int i=0;i<b;i++) #define F first #define S second #define sz size #define ls s,m,idx<<1 #define rs m+1,e,idx<<1|1 const ll MOD=ll(1e9)+7; const ll MAXN=2*ll(1e6); void checker(){ ll n=rand()%20+2; vi a(n,ll()); for(ll i=0;i<n;i++){ a[i]=rand()%20+2; } for(ll b=0;b<(1<<n);b++){ vi on,off; for(ll i=0;i<n;i++){ if(i&(1<<i)){ on.push_back(i); } else{ off.push_back(i); } } } } /////////////////////////////////////////////////////////////////////// vector<ll> pa,pb,pab; void init(string a, string b){ ll n=a.size(); pa.assign(n+1,0); pb.assign(n+1,0); pab.assign(n+1,0); a='1'+a; b='1'+b; for(ll i=1;i<=n;i++){ pa[i]=pa[i-1]+(a[i]=='A'); pb[i]=pb[i-1]+(b[i]=='A'); pab[i]=pab[i-1]+(a[i]!=b[i]); } } int get_distance(int x, int y){ x++; y++; if((pa[y]-pa[x-1])!=(pb[y]-pb[x-1])){ return -1; } else{ return (pab[y]-pab[x-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...