結果
問題 | No.792 真理関数をつくろう |
ユーザー |
![]() |
提出日時 | 2019-02-22 21:39:30 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 8 ms / 2,000 ms |
コード長 | 938 bytes |
コンパイル時間 | 1,623 ms |
コンパイル使用メモリ | 171,552 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-11-25 07:51:43 |
合計ジャッジ時間 | 2,206 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 22 |
ソースコード
#include <bits/stdc++.h> using namespace std; using lint = long long; template<class T = int> using V = vector<T>; template<class T = int> using VV = V< V<T> >; int main() { cin.tie(nullptr); ios::sync_with_stdio(false); int n; cin >> n; bool bt = true, bf = true; string res; for (int bit = 0; bit < 1 << n; ++bit) { V<> q(n); for (auto&& e : q) cin >> e; int r; cin >> r; if (!r) { bt = false; continue; } bf = false; if (!res.empty()) res += "∨"; res += '('; for (int i = 0; i < n; ++i) { if (i) res += "∧"; if (q[i]) { res += "P_"; // res += '1' + i; res += to_string(i + 1); } else { res += "¬P_"; // res += '1' + i; res += to_string(i + 1); } } res += ')'; } cout << "A="; if (bt) return cout << "⊤" << '\n', 0; if (bf) return cout << "⊥" << '\n', 0; cout << res << '\n'; }