#include "koala.h"
#include <bits/stdc++.h>
using namespace std;
const int MAXN = 1e2;
int W;
int B[MAXN];
int R[MAXN];
int minValue(int n, int w)
{
memset(B, 0, sizeof(B));
B[0] = 1;
playRound(B, R);
for (int i = 0; i < n; i++)
{
if (B[i] >= R[i])
return i;
}
}
int maxValue(int n, int w)
{
vector <int> mx;
for (int i = 0; i < n; i++)
mx.push_back(i);
while (mx.size() > 1)
{
memset(B, 0, sizeof(B));
int tmp = w / mx.size();
for (auto i : mx)
B[i] = tmp;
playRound(B, R);
mx.clear();
for (int i = 0; i < n; i++)
{
if (R[i] > tmp)
mx.push_back(i);
}
}
return mx[0];
}
int greaterValue(int n, int w)
{
memset(B, 0, sizeof(B));
int l = 0, r = 10;
while (r - l > 1)
{
int mid = (l + r) >> 1;
B[0] = B[1] = mid;
playRound(B, R);
if (R[0] > B[0] && R[1] > B[1])
l = mid;
else if (R[0] <= B[0] && R[1] <= B[1])
r = mid;
else
return R[0] < R[1];
}
B[0] = B[1] = r;
playRound(B, R);
return R[0] < R[1];
}
bool cmp(int x, int y)
{
memset(B, 0, sizeof(B));
B[x] = B[y] = W;
playRound(B, R);
return R[x] < R[y];
}
void Sort(int l, int r, vector <int> &arr)
{
if (l + 1 == r)
return;
int mid = (l + r) >> 1;
Sort(l, mid, arr);
Sort(mid, r, arr);
int itl = l, itr = mid;
vector <int> tmp;
while (itl < mid && itr < r)
{
if (cmp(arr[itl], arr[itr]))
tmp.push_back(arr[itl++]);
else
tmp.push_back(arr[itr++]);
}
while (itl < mid)
tmp.push_back(arr[itl++]);
while (itr < r)
tmp.push_back(arr[itr++]);
for (int i = l; i < r; i++)
arr[i] = tmp[i - l];
}
void allValues(int n, int w, int *p)
{
W = w / 2;
vector <int> ord;
for (int i = 0; i < n; i++)
ord.push_back(i);
Sort(0, n, ord);
for (int i = 0; i < n; i++)
p[ord[i]] = i + 1;
}
Compilation message (stderr)
koala.cpp: In function 'int minValue(int, int)':
koala.cpp:22:1: warning: control reaches end of non-void function [-Wreturn-type]
22 | }
| ^
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |