結果
| 問題 | 
                            No.1242 高橋君とすごろく
                             | 
                    
| コンテスト | |
| ユーザー | 
                             | 
                    
| 提出日時 | 2020-10-03 15:40:20 | 
| 言語 | C++17  (gcc 13.3.0 + boost 1.87.0)  | 
                    
| 結果 | 
                             
                                TLE
                                 
                             
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 869 bytes | 
| コンパイル時間 | 920 ms | 
| コンパイル使用メモリ | 76,440 KB | 
| 最終ジャッジ日時 | 2025-01-15 02:06:55 | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge5 / judge2 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | TLE * 4 | 
| other | RE * 17 TLE * 7 | 
ソースコード
#include<iostream>
#include<vector>
#include <algorithm>
using namespace std;
using ll = long long;
using ull = unsigned long long;
int main(){
 ull n;
 int k;
 cin >> n >> k;
 vector<ull> a(k + 1 , 0);
 for(int i = 1; i <= k; i++){
  cin >> a[i];
 }
 ull mx =*max_element(a.begin() , a.end());
 vector<int> check(mx + 10 , 0);
 for(int i = 1; i <= k; i++){
  check[a[i]] = 1;
 }
 
 for(ull i = mx; i >= 0; i--){
  if(check[a[i]] == 1){
   if(check[a[i] + 5] == 1)check[a[i] - 1] = 1;
   if(check[a[i] - 5] == 1)check[a[i] - 6] = 1;
   if(check[a[i] + 3] == 1)check[a[i] + 4] = 1;
   if(check[a[i] - 3] == 1)check[a[i] - 4] = 1;
   if(check[a[i] - 3] == 1)check[a[i] - 4] = 1;
   if(check[a[i] + 1] == 1)check[a[i] - 3] = 1;
   if(check[a[i] - 1] == 1)check[a[i] - 4] = 1;
  }
 }
 if(check[1] == 1)cout << "No" << endl;
 else cout << "Yes" << endl;
return 0;
}