Submission #1154120

#TimeUsernameProblemLanguageResultExecution timeMemory
1154120kadirGenetics (BOI18_genetics)C++20
100 / 100
202 ms17336 KiB
#include<bits/stdc++.h>
#define int long long
#define ss second
#define ff first
#define pb push_back
using namespace std;
const int mod=1e9+7;
const int mxn=5000;
const int b=13;
int n,m,k;
int s[mxn],sum,p[70][mxn],h[mxn];
string a[mxn];
signed main() {
	ios_base::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
    cin>>n>>m>>k;
    sum=0;
    for(int i=1;i<=n;i++) {
		cin>>a[i];
		a[i]=" "+a[i];
    	h[0]=0;
    	for(int j=1; j<=m; j++) {
    		h[j]=(h[j-1]*b%mod+a[i][j]-'A')%mod;
     	}
    	s[i]=h[m];
    	sum+=s[i];
    	for(int j=1; j<=m; j++) {
			p[a[i][j]-'A'][j]+=s[i];
		}
    }
	for(int i=1; i<=n; i++) {
		int t=0;
		for(int j=1; j<=m; j++) {
			t+=p[a[i][j]-'A'][j]-s[i];
		}
		if(t==(sum-s[i])*(m-k)) {
        	cout<<i;
        	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...