結果
| 問題 | 
                            No.1777 万華鏡美術館
                             | 
                    
| コンテスト | |
| ユーザー | 
                             kiyoshi0205
                         | 
                    
| 提出日時 | 2021-12-06 11:48:42 | 
| 言語 | C++14  (gcc 13.3.0 + boost 1.87.0)  | 
                    
| 結果 | 
                             
                                RE
                                 
                             
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 763 bytes | 
| コンパイル時間 | 2,343 ms | 
| コンパイル使用メモリ | 193,060 KB | 
| 実行使用メモリ | 6,948 KB | 
| 最終ジャッジ日時 | 2024-07-07 08:53:34 | 
| 合計ジャッジ時間 | 3,566 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge3 / judge5 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 1 RE * 2 | 
| other | AC * 5 RE * 5 | 
ソースコード
#pragma GCC target("avx")
#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")
#include<bits/stdc++.h>
using namespace std;
int main(){
  int i,N,M;
  cin>>N>>M;
  if(M==0){
    putchar('4'+N%2);
    putchar('\n');
    return 0;
  }
  vector<int> ver;
  set<pair<int,int>>edge;
  for(int i=0;i<M;++i){
    int u,v;
    cin>>u>>v;
    --u;--v;
    edge.emplace(u,v);
    ver.emplace_back(u);
    ver.emplace_back(v);
  }
  sort(ver.begin(),ver.end());
  ver.erase(unique(ver.begin(),ver.end()),ver.end());
  for(size_t i=0;i<ver.size();++i){
    if(!edge.count(minmax(ver[i],ver[(i+1)%ver.size()]))){
      puts("5");
      return 0;
    }
    if((ver[(i+1)%ver.size()]+N-ver[i])%N%2!=1){
      puts("5");
      return 0;
    }
  }
  
  assert(false);
}
            
            
            
        
            
kiyoshi0205