# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
843200 | 2023-09-03T19:11:53 Z | manizare | Sequence (BOI14_sequence) | C++14 | 85 ms | 2260 KB |
#include <bits/stdc++.h> #define int long long #define pb push_back #define F first #define S second #define all(a) a.begin(),a.end() #define pii pair <int,int> #define int long long using namespace std ; mt19937 rng(time(0)) ; const int maxn = 1e5 + 10 , inf = 1e17 + 10 ; int a10[18] ; int dfs(vector <int> vec , int ok = 1){ if(vec.size() == 1){ int s = vec.back() ; vector <int> vj ; for(int i = 0 ;i < 10 ; i++){ if(s>>i&1){ vj.pb(i) ; } } if(vj.size() >= 2){ if(vj[0] == 0){ swap(vj[0] , vj[1]) ; } }else{ if(vj.size() == 0){ return ok ; } if(vj[0] == 0)return 10; } int ans= 0 ; for(int i = 0 ; i < vj.size() ; i++){ ans*=10; ans +=vj[i] ; } return ans ; } int ans = inf ; for(int i = 0 ; i < 10 ; i++){ int k = i , t = 0 ; vector <int> vec2 ; for(int j = 0 ;j < vec.size() ; j++){ if(k==10){ k = 0 ; vec2.pb(t) ; t = 0 ; } if(vec[j]>>k&1){ vec[j]-=(1<<k); t |= vec[j] ; vec[j]+=(1<<k); }else{ t |= vec[j] ; } k++; } vec2.pb(t) ; if(vec == vec2 && ok == (i==0)){ continue ; } ans = min(ans , dfs(vec2 , (i == 0)) * 10 + i) ; } return ans ; } signed main(){ ios::sync_with_stdio(false); cin.tie(0) ; a10[0] = 1; for(int i =1 ;i <= 17 ; i++){ a10[i] = a10[i-1] * 10 ; } int n ;cin >> n ; vector <int> vec; for(int i = 1; i <= n; i++){ int x; cin >> x ; vec.pb((1<<x)) ; } cout << dfs(vec) ; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Incorrect | 2 ms | 344 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 1 ms | 344 KB | Output is correct |
2 | Incorrect | 2 ms | 348 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 348 KB | Output is correct |
2 | Correct | 24 ms | 676 KB | Output is correct |
3 | Correct | 14 ms | 600 KB | Output is correct |
4 | Correct | 14 ms | 600 KB | Output is correct |
5 | Correct | 14 ms | 600 KB | Output is correct |
6 | Correct | 6 ms | 600 KB | Output is correct |
7 | Correct | 56 ms | 1496 KB | Output is correct |
8 | Correct | 60 ms | 1300 KB | Output is correct |
9 | Correct | 85 ms | 2260 KB | Output is correct |
10 | Correct | 82 ms | 2256 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Incorrect | 2 ms | 344 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |