Submission #827154

#TimeUsernameProblemLanguageResultExecution timeMemory
827154OAleksaBaloni (COCI15_baloni)C++14
0 / 100
266 ms79036 KiB
#include <bits/stdc++.h> #define f first #define s second using namespace std; #define int long long const int maxn = 1e6 + 69; vector<int> g[maxn], vis(maxn), cnt(maxn, -1); void dfs(int v) { vis[v] = 1; for(auto u : g[v]) { if(!vis[u]) dfs(u); } } signed main() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); int tt = 1; //cin >> tt; while(tt--) { int n; cin >> n; vector<int> a(n); for(int i = 0;i < n;i++) cin >> a[i]; for(int i = 0;i < n;i++) { int x = cnt[a[i] + 1]; if(x != -1) { g[i].push_back(x); g[x].push_back(i); } cnt[a[i]] = i; } int ans = 0; for(int i = 0;i < n;i++) { if(!vis[i]) { ++ans; dfs(i); } } cout << ans; } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...