結果
問題 | No.1566 All Even |
ユーザー |
![]() |
提出日時 | 2021-06-26 13:30:10 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,505 bytes |
コンパイル時間 | 3,289 ms |
コンパイル使用メモリ | 197,704 KB |
最終ジャッジ日時 | 2025-01-22 13:14:56 |
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 16 WA * 12 |
ソースコード
#include <bits/stdc++.h>using namespace std;int main() {int N,M;cin >> N >> M;if(N >= 4) {cout << 0 << endl;return 0;}vector<int>x(M),y(M),z(M);for(int i = 0; i < M; i++) {cin >> x[i] >> y[i] >> z[i];x[i]--;y[i]--;}int ans = 0;for(int i = 0; i < (1 << N*N); i++) {vector<vector<int>>cnt(N,vector<int>(N));for(int j = 0; j < N*N; j++) {cnt[j/N][j%N] = 1 & (i >> j);}bool flag = true;for(int j = 0; j < M; j++) {if(cnt[x[j]][y[j]] != z[j]) {flag = false;}}for(int j = 0; j < N-1; j++) {for(int k = 0; k < N-1; k++) {int res = 0;res += cnt[j][k];res += cnt[j][k+1];res += cnt[j+1][k];res += cnt[j+1][k+1];if(res%2 != 0) {flag = false;}}}for(int j = 0; j < N-2; j++) {for(int k = 0; k < N-2; k++) {int res = 0;for(int l = 0; l <= 2; l++) {for(int m = 0; m <= 2; m++) {res += cnt[j+l][k+m];}}if(res%2 != 1) {flag = false;}}}if(flag) {ans++;}}cout << ans << endl;}