Problem p02580 (C++) — buggy submission, verdict: Runtime Error

/*
  Krishnakant Tiwari
  Problem Link:

 */
#pragma GCC optimize("Ofast")
#pragma GCC target("avx,avx2,fma")
#pragma GCC optimization("unroll-loops")
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define _cin                                                                   \\
  ios_base::sync_with_stdio(0);                                                \\
  cin.tie(0);
#define endl "\\n"
#define pb push_back
#define rep(i, a, b) for (ll i = a; i < b; ++i)
#define repd(i, a, b) for (ll i = a; i >= b; --i)
#define mp make_pair
#define hell 1000000007
#define vvll vector<vector<ll>>
#define vll vector<ll>
#define mll map<ll, ll>
#define sz(x) (ll) x.size()
#define sll set<ll>
#define pll pair<ll, ll>
#define F first
#define S second
#define eb emplace_back
#define ppb pop_back
#define pf push_front
#define ppf pop_front
#define all(x) x.begin(), x.end()
#define clr(x) memset(x, 0, sizeof(x))
#define sortall(x) sort(all(x))
#define tr(it, a) for (auto it = a.begin(); it != a.end(); it++)
#define PI 3.1415926535897932384626
#define deb(x) cout << #x << "=" << x << endl
#define deb2(x, y) cout << #x << "=" << x << "," << #y << "=" << y << endl
#define precise(x) cout << fixed << setprecision(x)
const ll MAX = 1000004;
const ll INF = 1e8L;
template <class T, class U> void chmin(T &t, const U &u) {
  if (t > u)
    t = u;
}
template <class T, class U> void chmax(T &t, const U &u) {
  if (t < u)
    t = u;
}
template <typename Head, typename... Tail> void debug_out(Head H, Tail... T) {
  cerr << " " << H;
  debug_out(T...);
}
template <typename Arg1> void pn(Arg1 &&arg1) { cout << arg1 << "\\n"; }
template <typename Arg1, typename... Args>
void pn(Arg1 &&arg1, Args &&...args) {
  cout << arg1 << "\\n";
  pn(args...);
}
template <typename Arg1> void ps(Arg1 &&arg1) { cout << arg1 << " "; }
template <typename Arg1, typename... Args>
void ps(Arg1 &&arg1, Args &&...args) {
  cout << arg1 << " ";
  ps(args...);
}
template <typename Arg1> void read(Arg1 &&arg1) { cin >> arg1; }
template <typename Arg1, typename... Args>
void read(Arg1 &&arg1, Args &&...args) {
  cin >> arg1;
  read(args...);
}

ll val(ll x, ll y) { return ((x * INF) + y); }

void solve() {
  ll h, w, m;
  read(h, w, m);
  mll r, c, hash;
  ll maxX = 0, maxY = 0;
  rep(i, 0, m) {
    ll u, v;
    read(u, v);
    hash[val(u, v)]++;
    r[u]++, c[v]++;
    chmax(maxX, r[u]);
    chmax(maxY, c[v]);
  }
  vll row, col;
  rep(i, 1, h + 1) if (maxX == r[i]) row.pb(i);
  rep(i, 1, w + 1) if (maxY == c[i]) col.pb(i);
  ll ans = maxX + maxY - 1;
  bool ch = false;
  for (auto i : row) {
    for (auto j : col) {
      if (!hash[val(i, j)]) {
        ans++;
        ch = true;
        break;
      }
    }
    if (ch)
      break;
  }
  pn(ans);
}

int main() {

  _cin
  // ll tc;
  // cin>>tc;
  // while(tc--){
  solve();
  // }
}

Error: 0

Fixed submission:

/*
  Krishnakant Tiwari
  Problem Link:

 */
#include <bits/stdc++.h>
#pragma GCC optimize("Ofast")
#pragma GCC target("avx,avx2,fma")
#pragma GCC optimization("unroll-loops")
using namespace std;
typedef long long ll;
#define _cin                                                                   \\
  ios_base::sync_with_stdio(0);                                                \\
  cin.tie(0);
#define endl "\\n"
#define pb push_back
#define rep(i, a, b) for (ll i = a; i < b; ++i)
#define repd(i, a, b) for (ll i = a; i >= b; --i)
#define mp make_pair
#define hell 1000000007
#define vvll vector<vector<ll>>
#define vll vector<ll>
#define mll map<ll, ll>
#define sz(x) (ll) x.size()
#define sll set<ll>
#define pll pair<ll, ll>
#define F first
#define S second
#define eb emplace_back
#define ppb pop_back
#define pf push_front
#define ppf pop_front
#define all(x) x.begin(), x.end()
#define clr(x) memset(x, 0, sizeof(x))
#define sortall(x) sort(all(x))
#define tr(it, a) for (auto it = a.begin(); it != a.end(); it++)
#define PI 3.1415926535897932384626
#define deb(x) cout << #x << "=" << x << endl
#define deb2(x, y) cout << #x << "=" << x << "," << #y << "=" << y << endl
#define precise(x) cout << fixed << setprecision(x)
const ll MAX = 1000004;
const ll INF = 1e18L + 5;
template <class T, class U> void chmin(T &t, const U &u) {
  if (t > u)
    t = u;
}
template <class T, class U> void chmax(T &t, const U &u) {
  if (t < u)
    t = u;
}
template <typename Head, typename... Tail> void debug_out(Head H, Tail... T) {
  cerr << " " << H;
  debug_out(T...);
}
template <typename Arg1> void pn(Arg1 &&arg1) { cout << arg1 << "\\n"; }
template <typename Arg1, typename... Args>
void pn(Arg1 &&arg1, Args &&...args) {
  cout << arg1 << "\\n";
  pn(args...);
}
template <typename Arg1> void ps(Arg1 &&arg1) { cout << arg1 << " "; }
template <typename Arg1, typename... Args>
void ps(Arg1 &&arg1, Args &&...args) {
  cout << arg1 << " ";
  ps(args...);
}
template <typename Arg1> void read(Arg1 &&arg1) { cin >> arg1; }
template <typename Arg1, typename... Args>
void read(Arg1 &&arg1, Args &&...args) {
  cin >> arg1;
  read(args...);
}

ll g[MAX];
ll a[MAX];

void solve() {
  ll h, w, m;
  read(h, w, m);
  bool vis[h][w];
  memset(vis, false, sizeof(vis));
  mll r, c;
  rep(i, 0, m) {
    ll u, v;
    read(u, v);
    u--, v--;
    vis[u][v] = true;
    r[u]++, c[v]++;
  }
  ll ans = 0;
  rep(i, 0, h) {
    rep(j, 0, w) {

      if (vis[i][j])
        chmax(ans, r[i] + c[j] - 1);
      else
        chmax(ans, r[i] + c[j]);
    }
  }
  pn(ans);
}

int main() {

  _cin
  // #ifndef ONLINE_JUDGE
  //     // for getting input from input.txt
  //     freopen("input.txt", "r", stdin);
  //     // for writing output to output.txt
  //     freopen("output.txt", "w", stdout);
  // #endif
  // ll tc;
  // cin>>tc;
  // while(tc--){
  solve();
  // }
}