Submission #592540

# Submission time Handle Problem Language Result Execution time Memory
592540 2022-07-09T09:47:58 Z cheissmart Ancient Machine (JOI21_ancient_machine) C++17
Compilation error
0 ms 0 KB
#include "Anna.h"
#include <vector>
#include <bits/stdc++.h>
#define IO_OP std::ios::sync_with_stdio(0); std::cin.tie(0);
#define F first
#define S second
#define V vector
#define PB push_back
#define EB emplace_back
#define MP make_pair
#define SZ(v) int((v).size())
#define ALL(v) (v).begin(), (v).end()

using namespace std;

typedef long long ll;
typedef pair<int, int> pi;
typedef V<int> vi;

namespace {
string _reset = "\u001b[0m", _yellow = "\u001b[33m", _bold = "\u001b[1m";
void DBG() { cerr << "]" << _reset << endl; }
template<class H, class...T> void DBG(H h, T ...t) {
    cerr << to_string(h);
    if(sizeof ...(t)) cerr << ", ";
    DBG(t...);
}
#define debug(...) cerr << _yellow << _bold << "Line(" << __LINE__ << ") -> [" << #__VA_ARGS__ << "]: [", DBG(__VA_ARGS__)

const int INF = 1e9 + 7;

ll fib[70];

}

void Anna(int n, V<char> s) {
    int pos = n - 1;
    for(int i = 0; i < n; i++)
        if(s[i] == 'X') {
            pos = i;
            break;
        }
    for(int i = 0; i < 17; i++)
        Send(pos >> i & 1);

    V<bool> he(n);
    for(int i = pos + 1; i < n; i++)
        if(s[i] == 'Z' && (i + 1 >= n || s[i + 1] != 'Z'))
            he[i] = true;

    fib[0] = fib[1] = 2;
    for(int i = 2; i < 70; i++)
        fib[i] = fib[i - 1] + fib[i - 2];

    for(int i = 0; i < n; i += 70) {
        ll tt = 0;
        for(int j = i; j < n && j < i + 70; j++)
            tt += he[j] * fib[j - i];
        assert(tt < (1LL << 48));
        for(int j = 0; j < 48; j++)
            Send(tt >> j & 1);
    }

}



    

Compilation message

Anna.cpp:22:6: warning: 'void {anonymous}::DBG()' defined but not used [-Wunused-function]
   22 | void DBG() { cerr << "]" << _reset << endl; }
      |      ^~~

/usr/bin/ld: /tmp/ccUdfywj.o: in function `main':
grader_bruno.cpp:(.text.startup+0x24d): undefined reference to `Bruno(int, int, std::vector<int, std::allocator<int> >)'
collect2: error: ld returned 1 exit status