Submission #333606

#TimeUsernameProblemLanguageResultExecution timeMemory
333606tengiz05Money (IZhO17_money)C++17
100 / 100
1281 ms62188 KiB
#include <bits/stdc++.h> using namespace std; #define int long long #define FASTIO ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); #define all(x) (x).begin(), (x).end() #define pb push_back #define pii pair<int, int> #define ff first #define ss second #define PI acos(-1) #define ld long double const int mod = 1e9+7, N = 1e6+5; int msb(int val){return sizeof(int)*8-__builtin_clzll(val);} int a[N], n, m, k; int f(int n){ int i, j; set<int> s; s.insert(mod); int ans = 0; for(i=1;i<=n;i++){ ans++; j = i; int need = *s.upper_bound(a[i]); s.insert(a[i]); while(i+1 <= n && a[i+1] >= a[i] && a[i+1] <= need){ i++; s.insert(a[i]); } } return ans; } int f1(int n){ int i, j; int ans = mod; vector<int> v; for(i=1;i<=n;i++)v.pb(a[i]); for(int mask = 0; mask < (1<<n); mask++){ set<int> s; s.insert(mod); int tt = 0; for(i=0;i<n;i++){ tt++; int need = *s.upper_bound(v[i]); s.insert(v[i]); int cnt =1; while(i+1 < n && (((mask&(1<<i)) && (mask&(1<<(i+1)))) || (!(mask&(1<<i)) && (!(mask&(1<<(i+1))))))){ if(v[i+1] < v[i])tt = mod; i++; if(v[i] > need)tt = mod; s.insert(v[i]);cnt++; } }ans = min(ans, tt); // cout << mask << ' ' << tt << '\n'; } assert(ans != mod); return ans; } /* 7 1 5 7 2 3 4 6 * */ void solve(int test_case){ int i, j; cin >> n; for(i=1;i<=n;i++){ cin >> a[i]; } cout << f(n) << '\n'; } signed main(){ FASTIO; #define MULTITEST 0 #if MULTITEST int ___T; cin >> ___T; for(int T_CASE = 1; T_CASE <= ___T; T_CASE++) solve(T_CASE); #else solve(1); #endif return 0; }

Compilation message (stderr)

money.cpp: In function 'long long int f(long long int)':
money.cpp:16:9: warning: variable 'j' set but not used [-Wunused-but-set-variable]
   16 |  int i, j;
      |         ^
money.cpp: In function 'long long int f1(long long int)':
money.cpp:35:9: warning: unused variable 'j' [-Wunused-variable]
   35 |  int i, j;
      |         ^
money.cpp: In function 'void solve(long long int)':
money.cpp:69:9: warning: unused variable 'j' [-Wunused-variable]
   69 |  int i, j;
      |         ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...