結果

問題 No.488 四角関係
ユーザー ikd
提出日時 2017-02-25 00:16:13
言語 C++11(廃止可能性あり)
(gcc 13.3.0)
結果
AC  
実行時間 42 ms / 5,000 ms
コード長 863 bytes
コンパイル時間 759 ms
コンパイル使用メモリ 69,948 KB
実行使用メモリ 5,248 KB
最終ジャッジ日時 2025-01-03 02:08:12
合計ジャッジ時間 1,871 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 22
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<iostream>
#include<vector>
#include<algorithm>

using namespace std;
int g[50][50];

int main(){

   int N, M;
   cin>> N>> M;
   int a[M], b[M];
   for(int i=0; i<M; i++){
      cin>> a[i]>> b[i];
      g[a[i]][b[i]]=g[b[i]][a[i]]=1;
   }

   int r=0;
   for(int s=0; s<N; s++){
      for(int t=s+1; t<N; t++){
         for(int u=t+1; u<N; u++){
            for(int v=u+1; v<N; v++){
               vector<int> x={s, t, u, v};
               sort(x.begin(), x.end());
               do{
                  if(g[x[0]][x[1]]&&g[x[1]][x[2]]&&g[x[2]][x[3]]&&g[x[3]][x[0]]){
                     if(!g[x[0]][x[2]]&&(!g[x[1]][x[3]])){
                        r++;
                        break;
                     }
                  }
               }while(next_permutation(x.begin(), x.end()));
            }
         }
      }
   }

   cout<< r<< endl;
}
0