Soma dos números pares na sequência Fibonacci

Os números de Fibonacci (Wikipedia, Wikipedia) são uma sequência definida como $F_n = F_{n-2} + F_{n-1}$. Os primeiros números são 0 e 1, e a partir deles, a sequência segue: 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, …. Dada a definição da sequência Fibonacci, como se calcula a soma dos números pares até $F_n < C$? A solução simples é fazer um script conforme C = 100 F_n2 = 0 F_n1 = 1 soma = 0 while True: F_n = F_n2 + F_n1 if F_n >= C: break elif F_n % 2 == 0: soma += F_n F_n2 = F_n1 F_n1 = F_n print(soma) Mas é possível fazer melhor?... [Continue lendo]

Experimentos com Machine Learning

O problema que machine learning visa resolver é encontrar a melhor função de decisão dado um conjunto de dados. Portanto, este problem contém um conjunto de entrada $\mathcal{X}$, um algoritmo de aprendizado $\mathcal{A}$ e, normalmente, um conjunto de saídas esperadas $\mathcal{y}$. Assim, como é possível saber se a função de decisão $\mathcal{f}$ gerada por $\mathcal{A}$ é realmente útil? A resposta é que é necessário avaliar um experimento sobre o desempenho (performance) de $\mathcal{f}$ em um conjunto de dados.... [Continue lendo]

Técnicas de combinatória

Dado um conjunto $S$ qualquer com $n$ elementos, de quantas formas é possível organizar/ordenar os elementos? Quantos subconjuntos de $S$ com $k <= n$ elementos podem ser criados? Essas respostas podem ser encontradas com algumas técnicas de combinatória. Definições $ S = \text{ { A, B, C, D } } $ e $n = \lvert S \rvert = 4$ De quantas formas é possível organizar/ordenar os elementos? Resposta: A quantidade de permutações de $S$, ou seja, $n!... [Continue lendo]