# | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
---|---|---|---|---|---|---|---|
107673 | 2019-04-25T12:23:17 Z | patrikpavic2 | 수열 (BOI14_sequence) | C++17 | 1000 ms | 768 KB |
#include <cstdio> #include <cstring> #include <cstdlib> #include <ctime> #include <algorithm> #include <set> #include <vector> #include <queue> #include <map> #define X first #define Y second #define PB push_back using namespace std; typedef long long ll; typedef long double ld; typedef pair < int, int > pii; typedef vector < int > vi; typedef set < int > si; const int N = 1e5 + 500; const int M = 1e6 + 500; const int INF = 0x3f3f3f3f; const int MOD = 1e9 + 7; const int OFF = (1 << 18); const int LOG = 20; const double EPS = 1e-9; const double PI = 3.1415926535; int n, x, a[N], tr[N]; ll fin = (ll)INF * INF; bool inside(int i,int k){ for(;k;k /= 10) if(k % 10 == i && k != 0) return 1; return 0; } vector < int > v; int main(){ scanf("%d", &n); if(n <= 1000){ for(int i = 0;i < n;i++) scanf("%d", a + i); for(int st = 0;st < 100000;st++){ memset(tr, 0, sizeof(tr)); for(int i = 0;i < n;i++){ if(!inside(a[i], st + i)) tr[a[i]] = 1; } ll ans = st, pot = 100000LL, lst = -1; //printf("ANS %lld POT %lld\n", ans, pot); for(int i = 9;i >= 1;i--){ //printf("%d", tr[i]); if(tr[i]){ ans += (ll)i * pot; lst = (ll)i * pot; pot *= 10LL; } } //printf("\nST: %d\n", st); if(tr[0]) { if(lst != -1) ans += 9LL * lst; else ans += 1000000LL; } //printf("%lld\n", ans); //char c; scanf("%c", &c); if(ans) fin = min(fin, ans); } printf("%lld\n", fin); return 0; } scanf("%d", &x); if(x == 0){ int pot = 1; while(pot - (pot / 10 * 9) - 1 < n){ pot = 10 * pot + 1; } printf("%d\n", (pot / 10 * 9) + 1); return 0; } if(x == 9){ int pot = 1, pot2 = 1; while(pot2 - (pot / 10 * 8) - 1 < n){ pot = 10 * pot + 1; pot2 = 10 * pot2; } printf("%d\n", (pot / 10 * 8) + 1); return 0; } printf("%d", x); for(int i = 1;i < n;i *= 10) printf("0"); printf("\n"); return 0; }
Compilation message
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1068 ms | 768 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1065 ms | 640 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1076 ms | 768 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |
# | 결과 | 실행 시간 | 메모리 | Grader output |
---|---|---|---|---|
1 | Execution timed out | 1066 ms | 640 KB | Time limit exceeded |
2 | Halted | 0 ms | 0 KB | - |