Submission #38240

#TimeUsernameProblemLanguageResultExecution timeMemory
38240Just_Solve_The_ProblemMoney (IZhO17_money)C++11
0 / 100
0 ms17644 KiB
#include <bits/stdc++.h> using namespace std; #define pii pair < int, int > #define fr first #define sc second #define pb push_back #define ok puts("ok"); const int N = (int)1e6 + 7; pii a[N]; pii a1[N]; stack < int > st; int ans; main () { int n; scanf ("%d", &n); ans = n; for (int i = 1; i <= n; i++) { scanf ("%d", &a[i].fr); a[i].sc = -i; a1[i] = a[i]; a1[i].sc = i; } sort(a + 1, a + n + 1); sort(a1 + 1, a1 + n + 1); for (int i = 1; i <= n; i++) a[i].sc = -a[i].sc; for (int i = 1; i <= n; i++) { if (a1[i].sc == a1[i + 1].sc - 1) { ans--; continue; } int last = a[i].sc; bool fl = 0; if (st.size() > 1) { int cur = st.top(); st.pop(); if (st.top() + 1 == a[i].sc) { ans--; st.pop(); } else { st.push(cur); } } while (!st.empty() && last - 1 == st.top()) { last = st.top(); ans--; // ok fl = 1; st.pop(); } if (!fl) st.push(a[i].sc); } cout << ans; }

Compilation message (stderr)

money.cpp:18:7: warning: ISO C++ forbids declaration of 'main' with no type [-Wreturn-type]
 main () {
       ^
money.cpp: In function 'int main()':
money.cpp:19:28: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     int n; scanf ("%d", &n);
                            ^
money.cpp:22:31: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf ("%d", &a[i].fr);
                               ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...