結果
問題 | No.488 四角関係 |
ユーザー |
![]() |
提出日時 | 2018-05-21 23:09:38 |
言語 | C++17(clang) (17.0.6 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 141 ms / 5,000 ms |
コード長 | 799 bytes |
コンパイル時間 | 949 ms |
コンパイル使用メモリ | 129,284 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-11-30 12:22:20 |
合計ジャッジ時間 | 1,934 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 22 |
ソースコード
#include <iostream> #include <vector> #include <set> #include <tuple> #include <algorithm> using namespace std; set<pair<int, int>> st; bool check(int i, int j, int k, int l) { return st.count({i, j}) && st.count({j, k}) && st.count({k, l}) && st.count({l, i}) && !st.count({i, k}) && !st.count({j, l}); } int main() { int n, m; cin >> n >> m; for (int i = 0; i < m; i++) { int a, b; cin >> a >> b; st.emplace(a, b); st.emplace(b, a); } int c = 0; for (int i=0; i<n; i++) { for (int j=0; j<i; j++) { for (int k=0; k<j; k++) { for (int l=0; l<k; l++) { if (check(i, j, k, l) || check(i, k, j, l) || check(i, j, l, k)) { c++; } } } } } cout << c << "\n"; }