Advertisement
Guest User

FitaColorida-OBI-P1-2015

a guest
Aug 27th, 2015
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.96 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <algorithm>
  4.  
  5. using namespace std;
  6.  
  7. int main() {
  8.     int n;
  9.     scanf("%d", &n);
  10.     int lista[10010];
  11.     for (int i = 0; i < n; i++) {
  12.         scanf("%d", &lista[i]);
  13.     }
  14.  
  15.     int ult_zero = -1;
  16.     for (int i = 0; i < n; i++) {
  17.         if (lista[i] == 0) {
  18.             ult_zero = i;
  19.         }
  20.         else if (lista[i] == -1 && ult_zero != -1) {
  21.             lista[i] = i - ult_zero;
  22.         }
  23.     }
  24.  
  25.     ult_zero = -1;
  26.     for (int i = n-1; i >= 0; i--) {
  27.         if (lista[i] == 0) {
  28.             ult_zero = i;
  29.         }
  30.         else if (lista[i] == -1 && ult_zero != -1) {
  31.             lista[i] = ult_zero - i;
  32.         }
  33.         else if (ult_zero - i < lista[i] && ult_zero != -1) {
  34.             lista[i] = ult_zero - i;
  35.         }
  36.     }
  37.  
  38.     for (int i = 0; i < n; i++) {
  39.         if (i != 0) printf(" ");
  40.         printf("%d", min(lista[i],9));
  41.     }
  42.     printf("\n");
  43.     return 0;
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement