QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#790916 | #5254. Differences | jhinezeal123 | TL | 0ms | 0kb | C++20 | 1.4kb | 2024-11-28 16:00:49 | 2024-11-28 16:00:51 |
answer
#include <bits/stdc++.h>
// #define int long long
#define ii pair<int, int>
#define iii pair<int,ii>
#define vii vector<ii>
#define fi first
#define se second
#define endl '\n'
#define show(T) {for (auto x:T) cout<<x<<' ';cout<<endl;}
#define all(T) T.begin(),T.end()
using namespace std;
const double eps = 0.0001;
const int mod =/*998244353*/ 1e9+7;
const int N = 1005;
const int MATRIX_SIZE = 64;
const int BLOCK=500;
const long long oo=1e18;
int n,m,k,num[100005][6];
vector <vector<char>> T;
char c;
bool check(int pos){
for (int i=1,res;i<=n;++i){
if (i==pos) continue;
res=0;
for (int j=1;j<=m;++j)
res+=(T[pos][j]!=T[i][j]);
if (res!=k) return false;
}
return true;
}
void solve(){
cin>>n>>m>>k;
T.resize(n+5,vector<char>(m+5));
for (int i=1;i<=n;++i){
for (int j=1;j<=m;++j){
// cout<<i<<' '<<j<<endl;
cin>>c;
++num[j][c-'A'];
T[i][j]=c;
}
}
for (int i=1;i<=n;++i){
int sum=0;
for (int j=1;j<=m;++j)
sum+=num[j][T[i][j]-'A']-1;
// cout<<i<<' '<<sum<<endl;
if (sum!=(m-k)*(n-1)) continue;
if (check(i)) return void(cout<<i);
}
}
main() {
//freopen("ok.inp","r",stdin);
// freopen("kiemtra.out","w",stdout);
ios_base::sync_with_stdio(0);
cin.tie(0);
solve();
// cout<<endl<<clock()/1000.0;
}
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 0
Time Limit Exceeded
input:
3585 4096 2048 ABBBBBBAABAAAAAAAAAAAAABAABABBBABABAAAAABABAAAABAABAABBABBAABAABABBABAABBABBABABABBAAAABBABAABBBBABBBAABBBBBABAABAAABAAABBBBAAAABAABAABABABABBBBBABAAABAAABBAABABBABAABBAABBAABABBBBAABAAAABAABBABAAABBAAAAAABAABBABBABAABABBBAABABBABABBBAAAAABBBABABABBAABAAAABBBBABABAABBBABABABBAABBBABAB...