Submission #1219629

#TimeUsernameProblemLanguageResultExecution timeMemory
1219629trimkusRobot Contest (IOI23_robot)C++20
10 / 100
69 ms5704 KiB
#include "robot.h" #include <bits/stdc++.h> using namespace std; void program_pulibot() { const char goleft = 'E', goright = 'W', godown = 'S', goup = 'N', term = 'T'; // . < v > ^ vector<int> states = {-2, -1, 0, 1, 2}, states_blocked = {-2, -1, 2}; set<vector<int>> st; for (auto i : states) { for (auto j : states) { for (auto k : states) { vector<int> v = {0, i, -2, -2, j}; if (st.count(v)) continue; st.insert(v); set_instruction(v, 1, term); } } } for (auto i : states_blocked) { for (auto j : states_blocked) { for (auto k : states_blocked) { vector<int> v = {0, i, 1, j, k}; if (st.count(v)) continue; st.insert(v); set_instruction({0, i, 1, j, k}, 2, godown); } } } vector<int> down_state = {-2, -1, 1, 2}; for (auto i : down_state) { for (auto j : down_state) { for (auto k : down_state) { vector<int> v = {0, i, 0, j, k}; if (st.count(v)) continue; st.insert(v); set_instruction({0, i, 0, j, k}, 1, godown); set_instruction({1, i, 0, j, k}, 1, godown); } } } for (auto i : states_blocked) { for (auto j : states_blocked) { for (auto k : states_blocked) { vector<int> v = {0, i, j, 1, k}; if (st.count(v)) continue; st.insert(v); set_instruction({0, i, j, 1, k}, 2, goleft); } } } for (auto i : states) { for (auto j : states) { for (auto k : states) { vector<int> v = {0, i, j, 0, k}; if (st.count(v)) continue; st.insert(v); set_instruction({0, i, j, 0, k}, 1, goleft); set_instruction({1, i, j, 0, k}, 1, goleft); } } } for (auto i : states_blocked) { for (auto j : states_blocked) { for (auto k : states_blocked) { vector<int> v = {0, i, j, k, 1}; if (st.count(v)) continue; st.insert(v); set_instruction({0, i, j, k, 1}, 2, goup); } } } for (auto i : states) { for (auto j : states) { for (auto k : states) { vector<int> v = {0, i, j, k, 0}; if (st.count(v)) continue; st.insert(v); set_instruction({0, i, j, k, 0}, 1, goup); set_instruction({1, i, j, k, 0}, 1, goup); } } } // for (auto& v : st) { // for (auto u : v) { // cout << u << " "; // } // cout << "\n"; // } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...