/* Solution Author: Dmitry Sayutin Date: 29.04.2018 */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using std::cin; using std::cout; using std::cerr; using std::vector; using std::map; using std::array; using std::set; using std::string; using std::pair; using std::make_pair; using std::min; using std::abs; using std::max; using std::unique; using std::sort; using std::generate; using std::reverse; using std::min_element; using std::max_element; #ifdef LOCAL #define LASSERT(X) assert(X) #else #define LASSERT(X) {} #endif template T input() { T res; cin >> res; LASSERT(cin); return res; } template void input_seq(IT b, IT e) { std::generate(b, e, input::type>); } #define SZ(vec) int((vec).size()) #define ALL(data) data.begin(),data.end() #define RALL(data) data.rbegin(),data.rend() #define TYPEMAX(type) std::numeric_limits::max() #define TYPEMIN(type) std::numeric_limits::min() #define pb push_back #define eb emplace_back int w; bool dp(int p1, int p2, int k, int turn) { if (turn == 0) { // [p1, p1 + (1 << k)> -> [p1, p1 + (2 << k)> // [p1, p1 + (1 << k)> -> [p1 - (1 << k), p1 + (1 << k)> return (p1 + (2 << k) > p2 and p1 + (2 << k) <= w) or (not dp(p1, p2, k, 1)) or (p1 - (1 << k) >= 0 and not dp(p1 - (1 << k), p2, k, 1)); } else { return (p2 - (1 << k) < p1 + (2 << k) and p2 - (1 << k) >= 0) or (not dp(p1, p2 - (1 << k), k + 1, 0)) or (p2 + (2 << k) <= w and not dp(p1, p2, k + 1, 0)); } } int main() { std::iostream::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); // code here. cin >> w; int x1, x2; cin >> x1 >> x2; --x1, --x2; cout << (dp(x1, x2, 0, 0) ? "letoucan\n" : "cdkrot\n"); return 0; }