# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
115893 | aminra | Broken Device (JOI17_broken_device) | C++14 | 38 ms | 3072 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#include "Annalib.h"
using namespace std;
typedef long long ll;
typedef long double ld;
const int MOD = (int)1e9 + 7;
const int MAXN = (int)153;
const int infint = (int)1e9 + 3;
const ll inf = (ll)1e18;
int ans[MAXN], bad[MAXN];
void build(int i, int b1, int b2, int b3)
{
ans[i] = b1, ans[i + 1] = b2, ans[i + 2] = b3;
return;
}
void Anna(int N, ll X, int k, int P[])
{
memset(bad, 0, sizeof bad);
memset(ans, 0, sizeof ans);
for (int i = 0; i < k; i++)
bad[P[i]] = 1;
for (int i = 0; i < N; i += 3)
{
if(bad[i] + bad[i + 1] + bad[i + 2] > 1)
{
build(i, 0, 0, 0);
continue;
}
if(bad[i] + bad[i + 1] + bad[i + 2] == 0)
{
if(X % 4 == 0)
build(i, 1, 0, 0);
if(X % 4 == 1)
build(i, 0, 1, 1);
if(X % 4 == 2)
build(i, 1, 0, 1);
if(X % 4 == 3)
build(i, 1, 1, 1);
X /= 4;
continue;
}
if(bad[i + 1] == 0)
{
if(X % 2 == 0)
build(i, 0, 1, 0);
else
if(bad[i + 2] == 0)
build(i, 0, 0, 1);
else
build(i, 1, 1, 0);
X /= 2;
continue;
}
else
{
if(X % 2 == 0)
build(i, 0, 0, 1), X /= 2;
else
if(X % 4 == 0)
build(i, 1, 0, 0), X /= 4;
else
build(i, 1, 0, 1), X /= 4;
}
}
for (int i = 0; i < N; i++)
Set(i, ans[i]);
}
/*int main()
{
ios::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
}*/
#include "Brunolib.h"
#include <bits/stdc++.h>
#define ll long long
using namespace std;
long long Bruno( int N, int A[] ){
ll ans = 0, pw = 1;
for(int i = 0; i < N; i += 3) {
int val = A[i] * 4 + A[i + 1] * 2 + A[i + 2];
if(val == 0) {
continue;
}
if(val == 2) {
pw *= 2;
continue;
}
if(val == 1 || val == 6) {
ans += pw;
pw *= 2;
continue;
}
if(val == 3) {
ans += pw;
}
if(val == 4) {
ans += 0;
}
if(val == 5) {
ans += pw * 2;
}
if(val == 7) {
ans += 3 * pw;
}
pw *= 4;
}
return ans;
}
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |