結果

問題 No.1242 高橋君とすごろく
ユーザー k shimohara
提出日時 2020-10-03 15:50:19
言語 C++14
(gcc 13.3.0 + boost 1.87.0)
結果
TLE  
実行時間 -
コード長 884 bytes
コンパイル時間 711 ms
コンパイル使用メモリ 72,248 KB
実行使用メモリ 17,088 KB
最終ジャッジ日時 2024-07-18 04:30:36
合計ジャッジ時間 7,138 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample TLE * 1 -- * 3
other -- * 24
権限があれば一括ダウンロードができます

ソースコード

diff #

#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];
  a[i] += 10;
 }
 ull mx =*max_element(a.begin() , a.end());
 vector<int> check(mx + 20 , 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[11] == 1)cout << "No" << endl;
 else cout << "Yes" << endl;

return 0;

}
0