結果
| 問題 |
No.669 対決!!! 飲み比べ
|
| コンテスト | |
| ユーザー |
Dameningen
|
| 提出日時 | 2018-03-23 23:04:14 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 1,179 bytes |
| コンパイル時間 | 899 ms |
| コンパイル使用メモリ | 95,836 KB |
| 実行使用メモリ | 10,624 KB |
| 最終ジャッジ日時 | 2024-06-24 22:42:47 |
| 合計ジャッジ時間 | 4,432 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | -- * 4 |
| other | AC * 2 TLE * 1 -- * 22 |
ソースコード
#include<cstring>
#include<string>
#include<vector>
#include<iostream>
#include<cstdio>
#include<cstdlib>
#include<stack>
#include<queue>
#include<cmath>
#include<algorithm>
#include<list>
#include<set>
#include<map>
#include<complex>
#include<sstream>
#include<climits>
#define rep(X,Y) for (int (X) = 0;(X) < (Y);++(X))
#define rrep(X,Y) for (int (X) = (Y)-1;(X) >=0;--(X))
#define all(X) (X).begin(),(X).end()
#define pb push_back
#define mk make_pair
#define fi first
#define sc second
using namespace std;
typedef long long ll;
typedef pair<int,int> pii;
typedef pair<ll,ll> pll;
const int dx[4] = {1, 0, -1, 0}, dy[4] = {0, 1, 0, -1};
const int MAX_N = 1e6, MAX_A = 1e6;
int n, k;
int a[MAX_N];
int grendy[MAX_A+1];
int main() {
cin >> n >> k;
rep(i,n) cin >> a[i];
grendy[0] = 0;
int max_a = *max_element(a, a+n);
for (int j = 1; j <= max_a; ++j) {
set<int> s;
for (int i = 1; i <= k; ++i) {
if (i <= j) s.insert(grendy[j - i]);
}
int g = 0;
while (s.count(g) != 0) ++g;
grendy[j] = g;
}
int win = 0;
for (int i = 0; i < n; ++i) win ^= grendy[a[i]];
if (win != 0) puts("YES");
else puts("NO");
return 0;
}
Dameningen