420 likes | 527 Views
Para Computação. Aula de Monitoria – Prova 1 2012.1 – Gisely Melo. Livro!. 1) Notas sobre crescimento de função – 180 2) Notas sobre Indução – 263 3) Notas sobre Definições Recursivas – 295 4) Contagem – 335 5) inclusão-exclusão – 499 6) Teorema binomial, Triângulo de Pascal
E N D
Para Computação Aula de Monitoria – Prova 1 2012.1 – Gisely Melo
Livro! 1) Notas sobre crescimento de função – 180 2) Notas sobre Indução – 263 3) Notas sobre Definições Recursivas – 295 4) Contagem – 335 5) inclusão-exclusão – 499 6) Teorema binomial, Triângulo de Pascal (permutações) - 355 Monitoria [12/04/2012] - Parte Gisely
Contagem exemplo 1 QUANTAS CADEIAS DE 6 BITS COMEÇAM E TERMINAM COM BITS IGUAIS 2 X 2 X 2 X 2 X 2 X 1 32 Esse valor vai depender do primeiro, logo nessa posição só vai ter uma opção: A QUE FOI COLOCADA NO PRIMEIRO QUADRADO Monitoria [12/04/2012] - Parte Gisely
Contagem exemplo 2 QUANTAS CADEIAS DE 8 BITS PODEMOS FORMAR DE MODO QUE ELAS SEJAM PALÍDROMOS? 2 X 2 X 2 X 2 X 1 X 1 X 1 X 1 16 CADEIAS Essas ultimas quatro posições vão procurar saber o que a correspondente a ela colocou... Monitoria [12/04/2012] - Parte Gisely
Contagem Encontre a quantidade de inteiros positivos que são menores ou iguais a 100 que ñ são divisíveis por 5 e por 7. Calcularemos primeiro a quantidade de inteiros positivos: De 1 até 100 100 números Por 7 Por 5 Depois Calcularemos a quantidade de inteiros positivos divisíveis por 5 e por 7: {35, 70} = 2 números Resposta 100 – 2 = 98 Por 5 e por 7 Monitoria [12/04/2012] - Parte Gisely
Contagem |A1 U A2 U A3|= |A1| + |A2| + |A3| − |A1 A2| − |A2 A3| − |A1 A3| + |A1 A2 A3|....???????????? Monitoria [12/04/2012] - Parte Gisely
Contagem Exemplo: 1) Quantas cadeias de tamanho 8 ou começam com o bit 1, ou terminam com 2 bits 00? |A| = |B| = |AB| = (A U B) = |A| + |B| - |AB| Essa opção já esta incluída em A e em B + = 192 Monitoria [12/04/2012] - Parte Gisely
Contagem Exemplo : questão 5 da lista de vocês: QUANTAS CADEIAS DE 6 BITS COM 4BITS “1” JUNTOS EXISTEM? Monitoria [12/04/2012] - Parte Gisely
Contagem Exemplo: QUANTAS CADEIAS DE 5 BITS COMEÇAM OU TERMINAM COM ”00”? Monitoria [12/04/2012] - Parte Gisely
Contagem Provar que a quantidade de subconjuntos de um conjunto finito S é ..... existem cadeias de bits de tamanho | S |. Logo, | P(S) |= Cada elemento pode estar presente ou não no conjunto das partes. Temos duas possibilidades pra cada um Monitoria [12/04/2012] - Parte Gisely
Casa dos pombos Monitoria [12/04/2012] - Parte Gisely
Casa dos pombos 5) Qual o número mínimo de pessoas que deveríamos agrupar para garantir que pelo menos 2 nasceram no mesmo mês e com a mesma letra inicial do nome? JANEIRO FEVEREIRO MARÇO ABRIL MAIO JUNHO JULHO AGOSTO SETEMBRO OUTUBRO NOVEMBRO DEZEMBRO A B C D E F G H I J K L M Q R S T U V W X Y Z • No pior caso, se tivermos 26*12=312 pessoas em todos os meses do ano, • portanto, se adicionarmos mais uma sempre haverá alguma outra pessoa que nasceu no mesmo mês e seu nome tem a mesma letra inicial. Resposta 312 + 1 = 313 Monitoria [12/04/2012] - Parte Gisely
Casa dos pombos 6) Entre 100 pessoas quantas pelo menos nasceram no mesmo mês? • Eu vou dividir 100 por 12 pra ver quantos grupos de 12 certinho eu consigo formar • Depois percebo que da 8,333333 ? Resposta Função teto de: 8,333 = 9 Monitoria [12/04/2012] - Parte Gisely
MasRafael Acevedo eJoão Pedro Existem... Monitoria [12/04/2012] - Parte Gisely
Mas Rafael e João Existem... Na cabeça deles, a resposta era 8 e isso fez com que os dois ficassem no meu pé depois da aula. Tô mentindo? eheheh • Vamo FINGIR que eles estão certos e imagina que a resposta é 8 beleza? ? • Multiplica ai 8 por 12, da quanto • 96 né? Mas são 100 pessoas. Aonde vão parar aos outras 4? Monitoria [12/04/2012] - Parte Gisely
Mas Rafael e João Existem... É só imaginar que já tem 12 grupos com 8 pessoas fechados ta ligado? 8 pessoas 8 pessoas 8 pessoas 8 pessoas 8 pessoas 8 pessoas +1 +1 janeiro fevereiro março abril maio junho 8 pessoas 8 pessoas 8 pessoas 8 pessoas 8 pessoas 8 pessoas +1 +1 julho agosto setembro outubro novembro dezembro • E as 4 que estão perambulando por ai? • Elas vão ter que entrar em algum mês desse ai. • Vamo colocar cada uma em um mês diferente. Monitoria [12/04/2012] - Parte Gisely
Mas Rafael e João Existem... É só imaginar que já tem 12 grupos com 8 pessoas fechados ta ligado? 8 pessoas 8 pessoas 8 pessoas 8 pessoas 8 pessoas 8 pessoas +1 +1 janeiro fevereiro março abril maio junho 8 pessoas 8 pessoas 8 pessoas 8 pessoas 8 pessoas 8 pessoas +1 +1 julho agosto setembro outubro novembro dezembro Essas 4 pessoas a mais são justamente a parte decimal do 8,333 sacaram? Monitoria [12/04/2012] - Parte Gisely
Aritmética Modular! Monitoria [12/04/2012] - Parte Gisely
Aritmética Modular! 16 mod 5 Dizemos que a ≡ b(mod m) se e somente se a modm = b mod m. 7 ≡ 2(mod 5) Monitoria [12/04/2012] - Parte Gisely
Aritmética Modular! 10) Indique o inverso de: a) 4 mod 9 b) 3 mod 5 c) 7 mod 17 Monitoria [12/04/2012] - Parte Gisely
Teorema Chinês... Monitoria [12/04/2012] - Parte Gisely
Teorema Chinês! 11) Indique as soluções para os seguintes sistemasa) X ≡ 3 (mod 9) X ≡ 4 (mod 7) X ≡ 2 (mod 5) Monitoria [12/04/2012] - Parte Gisely
Teorema Chinês! M =m1 Xm2 Xm3 Mk = M/mk X ≡ a1 (mod m1) X ≡ a2(mod m2) X ≡ a3(mod m3) M1.Y1 ≡ 1(mod m1) M2.Y2≡ 1(mod m2) M3.Y3≡ 1(mod m3) X =a3.M1.Y1+a2.M2.Y2+a3.M3.Y3(modM) Monitoria [12/04/2012] - Parte Gisely
Teorema Chinês! LOCALIZANDO OS VALORES DAS VARIÁVEIS NO SISTEMA:a) X ≡ 3 (mod9) X ≡ 4 (mod7) X ≡ 2 (mod5) m1 = 9 m2= 7 m3 = 5 a1= 3 a2 = 4 a3 = 2 M1 = m2.m3 = 35 M2 = m1.m3= 45 M3 = m2.m1= 63 M =m1 Xm2 Xm3 M= 315 X =a1.M1.Y1+a2.M2.Y2+a3.M3.Y3(modM) Monitoria [12/04/2012] - Parte Gisely
Teorema Chinês! SÓ FALTAM OS INVERSOS 35.Y1 ≡ 1(mod9) 45.Y2≡ 1(mod7) 63.Y3≡ 1(mod5) M1.Y1 ≡ 1(mod m1) 35.Y1 ≡ 1(mod9) Primeiro veja qual o numero Z, tal que Z é o RESTO da divisão de 35 por 9 nesse caso Z = 8 (8).Y1 ≡ 1(mod9) 9 = 8.1 + 1 1= 9 – 1.8 O INVERSO NÃO PODE SER UM NUMERO NEGATIVO. PORTANTO MESMO EU TENDO ACHADO (-1), PRA O NUMERO FICAR POSITIVO EU SOMO 9..... O INVERSO NESSE CASO VAI SER: Y1 = 8 Monitoria [12/04/2012] - Parte Gisely
Teorema Chinês! M3.Y3 ≡ 1(modm3) 63.Y3 ≡ 1(mod5) Primeiro veja qual o numero Z, tal que Z é o RESTO da divisão de 63 por 5 nesse caso Z = 3 (3).Y2≡ 1(mod5) 5 = 3.1 + 2 2 = 5 -1.3 (equação 1) 3 = 2.1 + 1 1 = 3 -1.2 (equação 2) Substituindo a equação1 na 2 temos: 1 = 3 – 1.[5 -1.3] 1 = 3 -1.5 +1.3 1= -1.5 + 2.3 OBSERVE: o resultado já é positivo, logo eu não somo mais nada e esse já é o meu inverso Y3 = 2 Monitoria [12/04/2012] - Parte Gisely
Teorema Chinês! Agora que temos todos os valores necessários, podemos aplicar na fórmula: a1= 3 a2 = 4 a3= 2 M1 = 35 M2 = 45 M3 = 63 M= 315 Y1= 8Y2= 5 Y3=2 X =a1. M1.Y1+a2.M2.Y2+a3.M3.Y3(modM) X ={3. 35.8 +4.45.5 +2.63.2}(mod315) X =840+ 900 + 252(mod315) X =1992(mod315) X = 102 Monitoria [12/04/2012] - Parte Gisely
Teorema Chinês! X ≡ 5 (mod 11) X ≡ 3 (mod 7) X ≡ 2 (mod 3) Monitoria [12/04/2012] - Parte Gisely
Crescimento de Função! Monitoria [12/04/2012] - Parte Gisely
Crescimento de Função! Abaixo há uma lista de classes de funções que são bastante utilizadas para análise de algoritmos, por ordem decrescente de crescimento de funções. A letra c denota uma constante qualquer Monitoria [12/04/2012] - Parte Gisely
Crescimento de Função! PROPRIEDADES: Monitoria [12/04/2012] - Parte Gisely
Crescimento de Função! 1 <= log n <= n <= n log n <= n2 <= 2n <= n! <= nn O resto é derivada deles... n! 2n n2 n log n n log n 1 Monitoria [12/04/2012] - Parte Gisely
Crescimento de Função! Fica sendo o big-O aquele que possuir maior expoente. g(x) = 3x2 + 70x5 = x2 + x5 = x5 Retire todas as Constantes f(x): 3x2 + 9 f(x): x2 O(x2) reduzir os expoentes... h(x) = 3x2 + 70x5 + 10 x12/x4 = x2 + x5 + x12/x4 = x2 + x5 + x8 = x8 O(x8) O(x5 ) ampliar os expoentes... r(x) = 3x2 + 70x5 + 5(x6 . x4) r(x) = x2 + x5 + (x6 . x4) = x2 + x5 + (x10) = (x10) O(x10) Monitoria [12/04/2012] - Parte Gisely
Crescimento de Função! Outro exemplo.... + (= O() = O() Mas se ele pedisse o valor de a para O() Ai você arredondaria pra cima O() = O() = Arredondando... O() O() a = 4 Monitoria [12/04/2012] - Parte Gisely
Crescimento de Função! Outro exemplo.... = Vejam: nesse caso, sabemos que ganha de x! Mas a resposta vai ser O(.) Por que a gente não pode eliminar um membro de um produto, só se for soma que a gente desconsidera, ou se o membro for uma constante.. Mas se ele pedisse o valor de a para O()? A gente não pediria... Essas funções são as maiores, como a gente ia chegar em X elevado a alguma coisa? Certo? Monitoria [12/04/2012] - Parte Gisely
Crescimento de Função! Ai tu pode se perguntar: e se a equação for um produto bem grande ? Não simplifica nada... Se for um produto NÃO MEXAM NELE Exemplo: O big-O disso é: O() Monitoria [12/04/2012] - Parte Gisely
Crescimento de Função! Outro exemplo.... Quem ganha? Quem cresce mais rápido é quem tem o coeficiente que cresce mais rápido.. No caso a resposta seria: O Monitoria [12/04/2012] - Parte Gisely
Crescimento de Função! o BIG–O é pra estimar o tempo que um algoritmo leva pra ser realizado.. Essas equações que vocês veem, é como se fosse a “soma dos tempos”. E não faz sentido aparecer tempo negativo na equação... Monitoria [12/04/2012] - Parte Gisely
Tem mais ó... Monitoria [12/04/2012] - Parte Gisely
A questão diz que f e g são sobrejetoras, e pergunta se fog também é!