제출 #68328

#제출 시각아이디문제언어결과실행 시간메모리
68328PajarajaGenetics (BOI18_genetics)C++17
46 / 100
2083 ms57976 KiB
#include <bits/stdc++.h> using namespace std; int arr[4107][4107]; int uc[4][4107]; bool c[4107]; int main() { ios::sync_with_stdio(false); int n,m,k; cin>>n>>m>>k; string s; for(int i=0;i<n;i++) { cin>>s; for(int j=0;j<m;j++) { if(s[j]=='A') arr[i][j]=0; if(s[j]=='C') arr[i][j]=1; if(s[j]=='G') arr[i][j]=2; if(s[j]=='T') arr[i][j]=3; uc[arr[i][j]][j]++; } } for(int ttt=0;ttt<50000;ttt++) { int x=rand()%n,y=rand()%n; if(x==y) continue; int st=0; for(int t=0;t<m;t++) if(arr[x][t]!=arr[y][t]) st++; if(st!=k) {c[x]=c[y]=true;}; } for(int i=0;i<n;i++) if(!c[i]) { int skor=0; bool propo=false; for(int j=0;j<m;j++) skor+=(n-uc[arr[i][j]][j]); if(skor!=(n-1)*k) continue; for(int j=0;j<n;j++) if(i!=j) { int x=0; for(int t=0;t<m;t++) if(arr[i][t]!=arr[j][t]) x++; if(x!=k) {propo=true; break;} } if(propo) continue; printf("%d",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...