Submission #1157800

#TimeUsernameProblemLanguageResultExecution timeMemory
1157800SmuggingSpunMagic Show (APIO24_show)C++20
35 / 100
1095 ms376 KiB
#include<bits/stdc++.h> #include "Alice.h" using namespace std; typedef long long ll; vector<pair<int, int>>Alice(){ ll X = setN(5000); vector<pair<int, int>>ans; for(int i = 2; i <= 5000; i++){ ans.emplace_back(X % (i - 1) + 1, i); } return ans; }
#include<bits/stdc++.h> #include "Bob.h" using namespace std; typedef long long ll; template<class T>bool maximize(T& a, T b){ if(a < b){ a = b; return true; } return false; } ll Bob(vector<pair<int, int>>edge){ for(auto& [u, v] : edge){ swap(u, v); u--; v--; } sort(edge.begin(), edge.end()); vector<int>prev_mod; ll start, prod = 1; for(auto& [mod, remain] : edge){ if(prev_mod.size() == 5){ break; } bool flag = true; for(int& x : prev_mod){ if(__gcd(mod, x) > 1){ flag = false; break; } } if(flag){ if(prev_mod.empty()){ start = remain; } else{ while(start % mod != remain){ start += prod; } } prod *= ll(mod); prev_mod.emplace_back(mod); } } while(true){ bool flag = true; for(auto& [mod, remain] : edge){ if(start % mod != remain){ flag = false; break; } } if(flag){ break; } start += prod; } return start; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...