結果
問題 |
No.3211 NAND Oracle
|
ユーザー |
|
提出日時 | 2025-07-25 22:36:09 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,602 bytes |
コンパイル時間 | 1,815 ms |
コンパイル使用メモリ | 203,380 KB |
実行使用メモリ | 8,172 KB |
最終ジャッジ日時 | 2025-07-25 22:36:24 |
合計ジャッジ時間 | 5,494 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 20 WA * 8 |
ソースコード
#include <bits/stdc++.h> using namespace std; void check(vector<pair<int,int>> ope){ auto f = [&](int a0,int a1) -> int { vector<int> A = {a0,a1}; for(auto [p,q] : ope){ if(A.at(p) == 1 && A.at(q) == 1) A.push_back(0); else A.push_back(1); } for(auto &a : A) cout << a << " "; cout << " "; return accumulate(A.begin(),A.end(),0); }; cout << "00->" << f(0,0) << endl; cout << "01->" << f(0,1) << endl; cout << "10->" << f(1,0) << endl; cout << "11->" << f(1,1) << endl; } int main(){ ios_base::sync_with_stdio(false); cin.tie(nullptr); int N,K; cin >> N >> K; K -= 2; if(N/2 > K){ if(K+2 < 5) cout << "No\n"; else{ cout << "Yes\n"; cout << "1 2\n"; cout << "1 2\n"; cout << "3 4\n"; cout << "4 5\n"; cout << "4 5\n"; vector<pair<int,int>> ope = {{0,1},{0,1},{2,3},{3,4},{3,4}}; N -= 5; while(N--) cout << "6 7\n",ope.push_back({5,6}); check(ope); } }else{ cout << "Yes\n"; vector<pair<int,int>> ope; { cout << "1 2\n"; N--; ope.push_back({0,1}); if(N){ cout << "1 2\n"; N--; ope.push_back({0,1}); } } while(N){ cout << "3 4\n"; N--; ope.push_back({2,3}); if(N == 0) break; cout << "1 2\n"; N--; ope.push_back({0,1}); } //check(ope); } }