Submission #1271760

#TimeUsernameProblemLanguageResultExecution timeMemory
1271760cbnk32_tuandungUnija (COCI17_unija)C++17
100 / 100
199 ms29152 KiB
/* _ _ ___ __ ___ ___ _ _ ___ __ ___ _ _ ___ ___ __ _____ _ _ ___ */ /* | || | /_\ \ / / / __|/ _ \| \| |/ __| \ \ / /_\ | | | |/ _ \ / __| \ \ / / _ \| \| |/ __| */ /* | __ |/ _ \ V / \__ \ (_) | .` | (_ | \ V / _ \ | |_| | (_) | (__ \ V / (_) | .` | (_ | */ /* |_||_/_/_\_\_|___|___/\___/|_|\_|\___| \_/_/_\_\ _\___/ \___/ \___| _ \_/_\___/|_|\_|\___| ___ */ /* | \| __| |_ _| || | /_\ \ / / | \ / _ \_ _| | \/ | __| \| | || | | \/ |/ _ \| \| |/ __| */ /* | |) | _| | | | __ |/ _ \ V / | |) | (_) | | | |\/| | _|| .` | __ | | |\/| | (_) | .` | (_ | */ /* |___/|___| |_| |_||_/_/ \_\_| |___/ \___/___| |_| |_|___|_|\_|_||_| |_| |_|\___/|_|\_|\___| */ #include <bits/stdc++.h> using namespace std; /* run g++ A_MORNING_16_6_25.cpp -o run.exe && ./run.exe g++ A_MORNING_16_6_25.cpp -std=c++1y -o run.exe && ./run.exe */ #define int long long // CONSTANTs const int MAXN = 1000009; // GIVEN int N; pair<int, int> A[MAXN]; // VARIABLEs // pair<int, int> nen[MAXN << 1]; int maxH[5000009]; int maxX = 0; // FUNCTIONs // void compress() { // int tmp = 1; // sort(nen + 1, nen + 1 + N + N); // if (nen[1].second <= N) A[nen[1].second].first = 1; // else A[nen[1].second - N].second = 1; // for (int i = 2; i <= N + N; ++i) { // tmp += nen[i].first != nen[i - 1].first; // if (nen[i].second <= N) A[nen[i].second].first = tmp; // else A[nen[i].second - N].second = tmp; // } // } void maximise(int &abc, int xyz) { if (abc < xyz) abc = xyz; } // MAIN signed main() { ios_base::sync_with_stdio(1+1==3); cin.tie(nullptr); cout.tie(nullptr); srand((unsigned int)time(nullptr)); cin >> N; for (int i = 1; i <= N; ++i) { cin >> A[i].first >> A[i].second; maximise(maxH[A[i].first >> 1], A[i].second); maximise(maxX, A[i].first >> 1); // cin >> nen[i].first >> nen[i + N].first; // nen[i].second = i; // nen[i + N].second = N + i; } // compress(); for (int i = maxX; i; --i) { maximise(maxH[i - 1], maxH[i]); } unsigned long long res = 0; for (int i = 1; i <= maxX; ++i) res += 2ll * maxH[i]; cout << res; cerr << "\nTime elapsed: " << (1.0 * clock() / CLOCKS_PER_SEC) << " s."; } /* Rubi-channnnn~~~ Haiiii~~~ Nani ga suki? Choco minto... yori mo anata~ Ayumu-channnnn~~~ Haiiiii~~~ Nani ga suki? Suturuberi fureiba yori mo anata~ Shiki-channnn~~~ Haiiiii~~~~ Nani ga suki? Kukkie ando krimu yori mo anata~ Minaaaa~~~ Haiiiiii~~~ Nani ga suki? Mochrion daisuki AI♡SCREAM */
#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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...