Solução Informática Iniciante - Semana 71

Solução por Samyra Almeida

Chame de qtd = quantidade de torres que são picos.

Para resolver esse problema basta checarmos se para a i-ésima torre a torre da direita e a da  esquerda são menores q a torre i, se sim, aumento qtd em uma unidade. Checamos isso para todos os i onde 1 < i < N.

Ao final, basta chegar se qtd = k, se sim, imprimimos "beuatiful". Caso contrário, imprimimos "ugly".

Para maior compreensão segue o código solução abaixo:


#include <bits/stdc++.h>
using namespace std;
int n, k, h[1010];
int main()
{
cin >> n >> k;
for(int i = 1 ; i <= n ; ++i) cin >> h[i];
int qtd = 0;
for(int i = 2 ; i < n ; ++i)
{
if(h[i-1] <= h[i] && h[i] >= h[i+1]) // checo se h[i] é um pico, se sim, aumento a quantidade de
{ // picos em 1 unidade
qtd++;
}
}
if(qtd == k) cout << "beautiful\n"; // se existem exatamente k picos
else cout << "ugly\n"; // caso contrário
}