/ SeriousOJ /

Record Detail

Accepted


  
# Status Time Cost Memory Cost
#1 Accepted 1ms 540.0 KiB
#2 Accepted 11ms 696.0 KiB
#3 Accepted 11ms 588.0 KiB
#4 Accepted 14ms 704.0 KiB
#5 Accepted 14ms 704.0 KiB
#6 Accepted 11ms 844.0 KiB
#7 Accepted 10ms 540.0 KiB
#8 Accepted 10ms 1.02 MiB
#9 Accepted 10ms 712.0 KiB
#10 Accepted 10ms 796.0 KiB
#11 Accepted 10ms 584.0 KiB
#12 Accepted 10ms 588.0 KiB
#13 Accepted 10ms 540.0 KiB
#14 Accepted 11ms 540.0 KiB
#15 Accepted 18ms 840.0 KiB
#16 Accepted 10ms 540.0 KiB
#17 Accepted 10ms 540.0 KiB
#18 Accepted 10ms 800.0 KiB
#19 Accepted 10ms 704.0 KiB
#20 Accepted 10ms 716.0 KiB
#21 Accepted 13ms 540.0 KiB
#22 Accepted 14ms 1.977 MiB
#23 Accepted 11ms 1.312 MiB
#24 Accepted 14ms 2.086 MiB
#25 Accepted 11ms 1.297 MiB
#26 Accepted 17ms 2.16 MiB
#27 Accepted 13ms 2.066 MiB
#28 Accepted 11ms 1.367 MiB
#29 Accepted 14ms 2.07 MiB
#30 Accepted 11ms 1.648 MiB
#31 Accepted 17ms 2.035 MiB
#32 Accepted 16ms 1.496 MiB
#33 Accepted 15ms 1.527 MiB
#34 Accepted 11ms 1.324 MiB
#35 Accepted 15ms 1.52 MiB
#36 Accepted 10ms 1.527 MiB
#37 Accepted 54ms 10.02 MiB
#38 Accepted 52ms 10.066 MiB
#39 Accepted 50ms 10.27 MiB
#40 Accepted 57ms 10.102 MiB
#41 Accepted 54ms 10.246 MiB
#42 Accepted 8ms 1.527 MiB
#43 Accepted 8ms 1.527 MiB
#44 Accepted 8ms 1.527 MiB
#45 Accepted 7ms 796.0 KiB
#46 Accepted 6ms 844.0 KiB
#47 Accepted 7ms 796.0 KiB
#48 Accepted 7ms 796.0 KiB
#49 Accepted 7ms 808.0 KiB
#50 Accepted 7ms 796.0 KiB

Code

#include <bits/stdc++.h>
using namespace std;
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/tree_policy.hpp>
using namespace __gnu_pbds;
template <typename T>
using ordered_set1 = tree<long long, null_type, less_equal<long long>, rb_tree_tag, tree_order_statistics_node_update>;
#define op()                      \
    ios_base::sync_with_stdio(0); \
    cin.tie(0);                   \
    cout.tie(0);
#define yes cout << "YES\n";
#define no cout << "NO\n";
#define gcd(a, b) __gcd(a, b)
#define lcm(a, b) ((a * b) / gcd(a, b))
#define PI 2.0 * acos(0.0)
#define Dpos(n) fixed << setprecision(n)
#define endl '\n'

typedef long long ll;
typedef long double ld;
typedef vector<ll> vl;
typedef pair<ll, ll> pll;
typedef pair<int, int> pii;
const ll MOD = 1e9 + 7;
const ll N = 2e5 + 1;

void solve()
{
    ll n, m, i, j, k;
    string s;
    cin >> n >> m;
    vector<string> v1;
    vector<vl> v2(m, vl(26)), v3(m, vl(26));
    for (i = 0; i < n; i++)
    {
        cin >> s;
        v1.push_back(s);
        for (j = 0; j < m; j++)
        {
            v3[j][s[j] - 'a']++;
        }
    }
    ll ans = 0;
    for (i = 0; i < n; i++)
    {
        ll res = 0;
        for (j = 0; j < m; j++)
        {
            char ch = v1[i][j];
            v2[j][ch - 'a']++, v3[j][ch - 'a']--;
        }
        for (j = 0; j < m; j++)
        {
            ll tmp1 = 0, tmp2 = 0;
            for (k = 0; k < 26; k++)
            {
                tmp1 = max(tmp1, v2[j][k]), tmp2 = max(tmp2, v3[j][k]);
            }
            res += (tmp1 + tmp2);
        }
        ans = max(ans, res);
    }
    cout << ans << '\n';
}
int main()
{
    op() int tc = 1;
    cin >> tc;
    for (int t = 1; t <= tc; t++)
    {
        // cout << "Case " << t << ": ";
        solve();
    }
}

Information

Submit By
Type
Submission
Problem
P1164 Simple character matching game
Contest
Brain Booster #8
Language
C++17 (G++ 13.2.0)
Submit At
2025-02-17 15:23:59
Judged At
2025-02-17 15:23:59
Judged By
Score
100
Total Time
57ms
Peak Memory
10.27 MiB