Submission #364781

#TimeUsernameProblemLanguageResultExecution timeMemory
364781RainbowbunnyJust Long Neckties (JOI20_ho_t1)C++17
100 / 100
128 ms10860 KiB
#include <iostream> #include <algorithm> int n; int prefix[200005], suffix[200005], ans[200005]; std::pair <int, int> a[200005]; int b[200005]; int main() { std::ios_base::sync_with_stdio(false); std::cin.tie(0); std::cout.tie(0); std::cin >> n; for(int i = 1; i <= n + 1; i++) { std::cin >> a[i].first; a[i].second = i; } std::sort(a + 1, a + n + 2); for(int i = 1; i <= n; i++) { std::cin >> b[i]; } std::sort(b + 1, b + n + 1); for(int i = 1; i <= n; i++) { prefix[i] = std::max(prefix[i - 1], a[i].first - b[i]); } for(int i = n + 1; i >= 2; i--) { suffix[i] = std::max(suffix[i + 1], a[i].first - b[i - 1]); } for(int i = 1; i <= n + 1; i++) { ans[a[i].second] = std::max(prefix[i - 1], suffix[i + 1]); } for(int i = 1; i <= n + 1; i++) { std::cout << ans[i] << ' '; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...