Solução por Samyra Almeida
Chame de = quantidade de torres que são picos.
Para resolver esse problema basta checarmos se para a -ésima torre a torre da direita e a da esquerda são menores q a torre , se sim, aumento em uma unidade. Checamos isso para todos os onde .
Ao final, basta chegar se , se sim, imprimimos "beuatiful". Caso contrário, imprimimos "ugly".
Para maior compreensão segue o código solução abaixo:
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#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 | |
} |