Submission #673469

#TimeUsernameProblemLanguageResultExecution timeMemory
673469Do_you_copyCrayfish scrivener (IOI12_scrivener)C++17
Compilation error
0 ms0 KiB
//Then #include <bits/stdc++.h> #define pb push_back #define fi first #define se second #define faster ios_base::sync_with_stdio(0); cin.tie(0); using namespace std; using ll = long long; using ld = long double; using pii = pair <int, int>; mt19937_64 Rand(chrono::steady_clock::now().time_since_epoch().count()); const int maxN = 1e6 + 10; //const int Mod = 1e9 + 7; //const int inf = int q; int pos[maxN], cnt, cnt1; int depth[maxN]; int lift[maxN][20]; char s[maxN]; void Init(){ cin >> q; while (q--){ char c, t; int x; cin >> t; if (t == 'T'){ cin >> c; pos[++cnt1] = ++cnt; lift[cnt][0] = pos[cnt1 - 1]; for (int i = 1; i < 20; ++i){ lift[cnt][i] = lift[lift[cnt][i - 1]][i - 1]; } depth[cnt] = depth[pos[cnt1 - 1]] + 1; s[cnt] = c; } else{ cin >> x; if (t == 'P'){ int u = pos[cnt1]; int k = depth[cnt] - x - 1; while (k){ int t = __builtin_ctz(k); u = lift[u][t]; k -= 1 << t; } cout << s[u] << "\n"; } else{ ++cnt1; pos[cnt1] = pos[cnt1 - x - 1]; } } } } #define debug #define taskname "test" signed main(){ faster int tt = 1; //cin >> tt; while (tt--){ Init(); } if (fopen("timeout.txt", "r")){ ofstream timeout("timeout.txt"); timeout << signed(double(clock()) / CLOCKS_PER_SEC * 1000); timeout.close(); #ifndef debug cerr << "Time elapsed: " << signed(double(clock()) / CLOCKS_PER_SEC * 1000) << "ms\n"; #endif // debug } }

Compilation message (stderr)

/usr/bin/ld: /tmp/cczPDExW.o: in function `main':
scrivener.cpp:(.text.startup+0x0): multiple definition of `main'; /tmp/cc11PkiV.o:grader.cpp:(.text.startup+0x0): first defined here
/usr/bin/ld: /tmp/cc11PkiV.o: in function `main':
grader.cpp:(.text.startup+0xff): undefined reference to `TypeLetter(char)'
/usr/bin/ld: grader.cpp:(.text.startup+0x15f): undefined reference to `UndoCommands(int)'
/usr/bin/ld: grader.cpp:(.text.startup+0x18b): undefined reference to `GetLetter(int)'
collect2: error: ld returned 1 exit status