結果
問題 |
No.1225 I hate I hate Matrix Construction
|
ユーザー |
|
提出日時 | 2020-09-12 21:10:43 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 4 ms / 2,000 ms |
コード長 | 1,378 bytes |
コンパイル時間 | 1,891 ms |
コンパイル使用メモリ | 167,260 KB |
実行使用メモリ | 6,824 KB |
最終ジャッジ日時 | 2025-01-02 14:23:44 |
合計ジャッジ時間 | 3,139 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 35 |
ソースコード
#include <bits/stdc++.h> #define rep(i,n) for (int i = 0; i < (int)(n); i ++) #define irep(i,n) for (int i = (int)(n) - 1;i >= 0;--i) using namespace std; using ll = long long; using PL = pair<ll,ll>; using P = pair<int,int>; constexpr int INF = 1000000000; constexpr long long HINF = 1000000000000000; constexpr long long MOD = 1000000007;// = 998244353; constexpr double EPS = 1e-4; constexpr double PI = 3.14159265358979; int main() { cin.tie(nullptr); ios::sync_with_stdio(false); int N; cin >> N; vector<int> S(N),T(N); rep(i,N) cin >> S[i]; rep(i,N) cin >> T[i]; vector<vector<int>> ans(N,vector<int>(N,-1)); rep(i,N) { if (S[i] == 0) { rep(j,N) ans[i][j] = 0; } if (S[i] == 2) { rep(j,N) ans[i][j] = 1; } if (T[i] == 0) { rep(j,N) ans[j][i] = 0; } if (T[i] == 2) { rep(j,N) ans[j][i] = 1; } } int r = 0,c = 0; rep(i,N) { if (S[i] == 1) { int cnt = 0; rep(j,N) if (ans[i][j] == 1) ++cnt; if (cnt == 0) ++r; } if (T[i] == 1) { int cnt = 0; rep(j,N) if (ans[j][i] == 1) ++cnt; if (cnt == 0) ++c; } } int A = max(r,c); rep(i,N) rep(j,N) if (ans[i][j] == 1) ++A; cout << A << '\n'; return 0; }