Submission #10242064


Source Code Expand

#include <bits/stdc++.h>
using namespace std;

using ll = long long;
using Pi = pair<int, int>;
using Pl = pair<ll, ll>;
using vint = vector<int>;
using vvint = vector<vint>;
using vvvint = vector<vvint>;
using vll = vector<ll>;
using uint = unsigned int;
using ull = unsigned long long;

template<typename T> using uset = unordered_set<T>;
template<typename T1, typename T2> using umap = unordered_map<T1, T2>;

constexpr int INF = (1 << 30) - 1;
constexpr ll LLINF = 1LL << 60;
constexpr int dy[] = {1, 0, -1, 0, 1, -1, -1, 1};
constexpr int dx[] = {0, 1, 0, -1, 1, 1, -1, -1};
constexpr char el = '\n';
constexpr int mod = 1000000007;

template<typename T> T gcd(T a, T b) { return (b ? gcd(b, a % b) : a); }
template<typename T> T lcm(T a, T b) { return (a / gcd(a, b) * b); }
template<typename T1, typename T2> inline void chmin(T1 &a, T2 b) { if (a > b) a = b; }
template<typename T1, typename T2> inline void chmax(T1 &a, T2 b) { if (a < b) a = b; }

template<typename T>
ostream& operator <<(ostream &os, vector<T> &v) {
	for (auto &u : v) os << u << el;
	return (os);
}

template<typename T>
istream& operator >>(istream &is, vector<T> &v) {
	for (auto &u : v) is >> u;
	return (is);
}

template<typename T1, typename T2>
istream& operator >>(istream &is, pair<T1, T2> &p) {
	return (is >> p.first >> p.second);
}

int main() {
	int N; cin >> N;
	vint A(1<<N); cin >> A;

	for (int i = 0; i < N; i++) {
		vint B(1 << (N-i-1));
		for (int j = 0; j < (1<<(N-i)); j += 2) {
			if (A[j] > A[j+1]) {
				B[j>>1] = A[j] - A[j+1];
			} else if (A[j] == A[j+1]) {
				B[j>>1] = A[j];
			} else {
				B[j>>1] = A[j+1] - A[j];
			}
		}
		A = B;
	}
	cout << A[0] << endl;
	return (0);
}

Submission Info

Submission Time
Task C - Kode Festival
User tinumukiti631
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1748 Byte
Status AC
Exec Time 113 ms
Memory 1792 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 2
AC × 23
Set Name Test Cases
Sample sample_01.txt, sample_02.txt
All sample_01.txt, sample_02.txt, sample_01.txt, sample_02.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt
Case Name Status Exec Time Memory
sample_01.txt AC 1 ms 256 KB
sample_02.txt AC 1 ms 256 KB
subtask1_01.txt AC 1 ms 256 KB
subtask1_02.txt AC 1 ms 256 KB
subtask1_03.txt AC 1 ms 256 KB
subtask1_04.txt AC 1 ms 256 KB
subtask1_05.txt AC 8 ms 384 KB
subtask1_06.txt AC 1 ms 256 KB
subtask1_07.txt AC 14 ms 384 KB
subtask1_08.txt AC 54 ms 1024 KB
subtask1_09.txt AC 2 ms 256 KB
subtask1_10.txt AC 113 ms 1792 KB
subtask1_11.txt AC 105 ms 1792 KB
subtask1_12.txt AC 106 ms 1792 KB
subtask1_13.txt AC 106 ms 1792 KB
subtask1_14.txt AC 105 ms 1792 KB
subtask1_15.txt AC 105 ms 1792 KB
subtask1_16.txt AC 105 ms 1792 KB
subtask1_17.txt AC 106 ms 1792 KB
subtask1_18.txt AC 105 ms 1792 KB
subtask1_19.txt AC 105 ms 1792 KB