結果
問題 |
No.5005 3-SAT
|
ユーザー |
![]() |
提出日時 | 2022-04-29 14:22:49 |
言語 | C++17(gcc12) (gcc 12.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 3 ms / 2,000 ms |
コード長 | 1,066 bytes |
コンパイル時間 | 2,270 ms |
実行使用メモリ | 6,952 KB |
スコア | 1,389 |
最終ジャッジ日時 | 2022-04-29 14:22:57 |
合計ジャッジ時間 | 7,439 ms |
ジャッジサーバーID (参考情報) |
judge12 / judge15 |
純コード判定しない問題か言語 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 100 |
ソースコード
#define rep(i, n) for (int i = 0; i < (int)(n); i++) #define ALL(v) v.begin(), v.end() typedef long long ll; #include <bits/stdc++.h> using namespace std; int calc(vector<int>&A,vector<int>&B,vector<int>&C,vector<int>&P,vector<int>&Q,vector<int>&R,vector<int>&S){ int num=0; rep(i,2048){ bool b=false; if(S[A[i]]==P[i]) b=true; if(S[B[i]]==Q[i]) b=true; if(S[C[i]]==R[i]) b=true; if(b) num++; else break; } return num; } int main(){ ios::sync_with_stdio(false); std::cin.tie(nullptr); vector<int> S(256),used(256); vector<int> A(2048),B(2048),C(2048),P(2048),Q(2048),R(2048); rep(i,2047) cin>>A[i]>>B[i]>>C[i]>>P[i]>>Q[i]>>R[i]; rep(i,2047){ if((used[A[i]] && S[A[i]]!=P[i]) || (used[B[i]] && A[B[i]]!=Q[i]) || (used[C[i]] && A[C[i]]!=R[i])) break; if(used[A[i]]==0) S[A[i]]=P[i]; if(used[B[i]]==0) S[B[i]]=Q[i]; if(used[C[i]]==0) S[C[i]]=R[i]; used[A[i]]=1,used[B[i]]=1,used[C[i]]=1; } for(int i=255;i>=0;i--) cout<<S[i]; cout<<endl; // cout<<calc(A,B,C,P,Q,R,S)<<endl; return 0; }