#include "Azer.h"
#include <vector>
#include <set>
#include <tuple>
#define pi pair<int, int>
#define vi vector<int>
using namespace std;
namespace {
int N;
int variable_example[500000];
int count;
void dijkstra(int s, vi& dist, vector<vector<pi>>& adj) {
multiset<pi> st;
dist[s] = 0;
st.insert({0, s});
while (!st.empty()) {
int v, d;
tie(d, v) = *st.begin();
st.erase(st.begin());
for (pi p : adj[v]) {
int to, w;
tie(to, w) = p;
if (dist[v] + w > dist[to]) continue;
st.erase({dist[to], to});
dist[to] = dist[v] + w;
st.insert({dist[to], to});
}
}
}
} // namespace
void InitA(int N, int A, std::vector<int> U, std::vector<int> V,
std::vector<int> C) {
::N = N;
for (int i = 0; i < A; ++i) {
variable_example[i] = U[i] + V[i] - C[i];
}
SendA(true);
count = 1;
}
void ReceiveA(bool x) {
++count;
if (count < 58000) {
SendA(x);
++count;
}
}
std::vector<int> Answer() {
std::vector<int> ans(N);
for (int k = 0; k < N; ++k) {
ans[k] = variable_example[k];
}
return ans;
}
#include "Baijan.h"
#include <vector>
namespace {
int N;
int count;
bool FunctionExample(bool P) {
return !P;
}
} // namespace
void InitB(int N, int B, std::vector<int> S, std::vector<int> T,
std::vector<int> D) {
::N = N;
count = 0;
}
void ReceiveB(bool y) {
++count;
if (count < 58000) {
SendB(FunctionExample(y));
++count;
}
}