結果

問題 No.1225 I hate I hate Matrix Construction
ユーザー new_textfile
提出日時 2020-09-17 20:33:49
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
AC  
実行時間 3 ms / 2,000 ms
コード長 1,354 bytes
コンパイル時間 1,647 ms
コンパイル使用メモリ 168,544 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-06-22 06:47:12
合計ジャッジ時間 2,272 ms
ジャッジサーバーID
(参考情報)
judge1 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 35
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
using namespace std;
// #include <atcoder/all>
// using namespace atcoder;

typedef long long ll;
typedef pair<ll,ll> P;
typedef pair<P,ll> PLL;
typedef pair<P,P> PP;
typedef vector<ll> llVEC;
typedef vector<P> PVEC;
typedef priority_queue<P,PVEC,greater<P> > PPQ;
typedef priority_queue<ll, llVEC, greater<ll> > llPQ;

#define rep(i,a,n) for(ll i = a;i < n;i++)
#define rrep(i,a,n) for(ll i = n-1; i >= a;i--)
#define index_check(i,n) if(i > n-1 || i < 0) continue;
#define LINF (ll)1e18
#define INF (int)1e9
#define fs first
#define sc second

template<typename T>
ll sz(vector<T> &vec){ return (ll)vec.size(); }
ll sz(string &s){ return (ll)s.size(); }
ll gcd(ll a,ll b){ return ((!b) ?a :gcd(b, a%b)); }
ll lcm(ll a,ll b){ return a / gcd(a,b) * b; }


int main(){
    ll n,sum = 0;
    cin >> n;
    ll s[n],t[n] = {};
    rep(i,0,n) cin >> s[i];
    rep(i,0,n) cin >> t[i];
    ll a[n][n] = {};
    ll cnts[n] = {},cntt[n] = {};

    rep(i,0,n){
        rep(j,0,n){
            if(s[i] == 2 || t[j] == 2) a[i][j] = 1;
            sum += a[i][j];
            cnts[i] += a[i][j];
            cntt[j] += a[i][j];
        }
    }

    ll memos = 0,memot = 0;
    rep(i,0,n) if(s[i] == 1 && cnts[i] == 0) memos++;
    rep(i,0,n) if(t[i] == 1 && cntt[i] == 0) memot++;

    cout << sum + max(memos,memot) << endl;
    return 0;
}
0