Guest User

Untitled

a guest
May 26th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.04 KB | None | 0 0
  1. //Escadinha - Fase 1 P1 - 2018
  2. //Por Lucio Cardoso
  3. //Complexidade: O(n)
  4.  
  5. #include <bits/stdc++.h>
  6.  
  7. using namespace std;
  8.  
  9. const int MAXN = 1010;
  10.  
  11. // sequência de números
  12. int num[MAXN];
  13.  
  14. int main(void)
  15. {
  16. int n;
  17. cin >> n;
  18.  
  19. for (int i = 1; i <= n; i++)
  20. cin >> num[i];
  21.  
  22. // faremos esse caso separadamente
  23. if (n == 1)
  24. {
  25. cout << "1\n";
  26. return 0;
  27. }
  28.  
  29. // resposta do problema
  30. int ans = 0;
  31. for (int i = 1; i < n; i++)
  32. {
  33. // razão da PA
  34. int dif = num[i]-num[i+1];
  35. for (int j = i; j < n; j++)
  36. {
  37. // se j é o último número na PA
  38. if (num[j]-num[j+1] != dif)
  39. {
  40. // na prox. iteração, i receberá j-1+1 = j
  41. i = j-1;
  42. break;
  43. }
  44. // n é o último número da PA, então faço i = n-1 para sair do loop
  45. if (j+1 == n) i = n-1;
  46. }
  47. // chegamos ao fim da PA atual, então incremento ans
  48. ans++;
  49. }
  50. cout << ans << "\n";
  51. return 0;
  52. }
Add Comment
Please, Sign In to add comment