Submission #496886

# Submission time Handle Problem Language Result Execution time Memory
496886 2021-12-22T06:04:20 Z abc864197532 DEL13 (info1cup18_del13) C++17
0 / 100
7 ms 1100 KB
#include <bits/stdc++.h>
using namespace std;
#define lli long long int
#define mp make_pair
#define eb emplace_back
#define pb push_back
#define X first
#define Y second
#define pii pair<int,int>
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
void abc() {cout << endl;}
template <typename T, typename ...U> void abc(T i, U ...j) {
	cout << i << ' ', abc(j...);
}
template <typename T> void printv(T l, T r) {
	for (; l != r; ++l) 
		cout << *l << " \n"[l + 1 == r];
}
#ifdef Doludu
#define test(x...) abc("[" + string(#x) + "]", x);
#else
#define test(x...) void(0);
#endif
const int N = 1001;

int main () {
	ios::sync_with_stdio(false);
	cin.tie(0);
	int t;
	cin >> t;
	while (t--) {
		int n, m;
		cin >> n >> m;
		vector <int> a(m + 1, 0);
		vector <int> rem;
		for (int i = 1; i <= m; ++i) {
			cin >> a[i];
			rem.pb(a[i] - a[i - 1] - 1);
		}
		rem.pb(n - a[m]);
		vector <int> move, fr;
		int pre = 0;
		bool fail = false;
		for (int i = 1; i <= m; ++i) {
			if (!rem[i - 1]) {
				pre = 0;
				continue;
			}
			if (rem[i - 1] & 1) {
				// must 1
				pre = 1;
				rem[i - 1] -= pre, rem[i] -= pre;
				move.pb(i - 1);
			} else if (!pre) {
				// must 2
				pre = 2;
				rem[i - 1] -= pre, rem[i] -= pre;
				move.pb(i - 1), move.pb(i - 1);
			} else {
				pre = 0;
			}
		}
		for (int i = 0; i <= m; ++i) if (rem[i] < 0)
			fail = true;
		if (fail || (rem[m] - pre) & 1) {
			cout << -1 << endl;
		} else {
			cout << 0 << endl;
		}
	}
}
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Incorrect 2 ms 204 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Incorrect 2 ms 204 KB Output isn't correct
3 Incorrect 5 ms 380 KB Output isn't correct
4 Incorrect 6 ms 324 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 3 ms 332 KB Output isn't correct
2 Incorrect 3 ms 320 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Incorrect 2 ms 204 KB Output isn't correct
3 Incorrect 5 ms 380 KB Output isn't correct
4 Incorrect 6 ms 324 KB Output isn't correct
5 Incorrect 1 ms 204 KB Output isn't correct
6 Incorrect 1 ms 316 KB Output isn't correct
7 Incorrect 1 ms 332 KB Output isn't correct
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 204 KB Output isn't correct
2 Incorrect 2 ms 204 KB Output isn't correct
3 Incorrect 5 ms 380 KB Output isn't correct
4 Incorrect 6 ms 324 KB Output isn't correct
5 Incorrect 1 ms 204 KB Output isn't correct
6 Incorrect 1 ms 316 KB Output isn't correct
7 Incorrect 1 ms 332 KB Output isn't correct
8 Incorrect 5 ms 568 KB Output isn't correct
9 Incorrect 5 ms 832 KB Output isn't correct
10 Incorrect 6 ms 868 KB Output isn't correct
11 Incorrect 7 ms 1100 KB Output isn't correct