Submission #605693

#TimeUsernameProblemLanguageResultExecution timeMemory
605693czhang2718Genetics (BOI18_genetics)C++17
100 / 100
627 ms36364 KiB
#include "bits/stdc++.h" using namespace std; typedef long long ll; const int N=4100; int n, m, k; string s[N]; int w[N]; ll sum[N][4]; mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); int h(char c){ if(c=='A') return 0; if(c=='G') return 1; if(c=='T') return 2; return 3; } int main(){ cin.tie(0)->sync_with_stdio(0); cin >> n >> m >> k; ll tot=0; for(int i=0; i<n; i++){ cin >> s[i]; w[i]=rng(); tot+=w[i]; } for(int j=0; j<m; j++){ for(int i=0; i<n; i++){ sum[j][h(s[i][j])]+=w[i]; } } for(int i=0; i<n; i++){ ll x=0; for(int j=0; j<m; j++){ for(int c=0; c<4; c++){ if(h(s[i][j])!=c) x+=sum[j][c]; } } if(x==(tot-w[i])*k){ cout << i+1; return 0; } } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...