Path: csiph.com!news.mixmin.net!eternal-september.org!feeder3.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Daniel Cerqueira Newsgroups: pt.comp.programacao Subject: Re: Lisp, um mapa de trajeto Date: Sun, 14 Jan 2024 22:25:49 +0000 Organization: A noiseless patient Spider Lines: 73 Message-ID: <87o7dn3636.fsf@brilhante.top> References: <87sf37ajzn.fsf@example.com> <87y1cy8z8u.fsf@example.com> <87v881z5qs.fsf@brilhante.top> <87a5pd6kuv.fsf@yaxenu.org> <8734v3ztrz.fsf@brilhante.top> <877cke4ny3.fsf@example.com> <87y1cujtsk.fsf@brilhante.top> <87ttni48z9.fsf@example.com> <87r0im428v.fsf@brilhante.top> <87edem3yds.fsf@example.com> <87edel4avz.fsf@brilhante.top> <874jfhvwb9.fsf@example.com> <87a5p83yxq.fsf@brilhante.top> <87mst8rpjj.fsf@example.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Injection-Info: dont-email.me; posting-host="1c1fac1b10bbec9a790bcb4ab9a4d29c"; logging-data="655814"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18C5KdRMOUjy6c6Fh5LfLIBrfFWgsoV7pw=" User-Agent: Gnus/5.13 (Gnus v5.13) Cancel-Lock: sha1:qZD6MadAAWlyMax1t0egdxVjfZ0= sha1:3FDEbkXf0lj8D3Wzgu/KVzhWm7M= Xref: csiph.com pt.comp.programacao:160 Patricia Ferreira writes: > Daniel Cerqueira writes: > >> Patricia Ferreira writes: >> >>> Muito bom! Agora acreditamos em falta de atenção no anterior. Um nome >>> melhor pra esse procedimento seria /merge/. Com ele você implementa o >>> seu /ordenar/ --- que se chama /merge sort/, um respeitoso algoritmo. >>> >>> (*) Exercício 3 >>> >>> Considere a lista abaixo como uma representação pra um grafo >>> direcionado. >>> >>> (defparameter sample-graph >>> '((A (B E)) >>> (B (E F)) >>> (C (D)) >>> (D ()) >>> (E (C F)) >>> (F (D G)) >>> (G ()))) >>> >>> Os vertices são o que você espera --- A, B, C, ..., G. A lista >>> associada a um vértice /v/ representa os outros vértices a que /v/ tem >>> acesso. Por exemplo, A tem aresta pra B, mas B não tem aresta pra A. >>> Escreva um procedimento chamado /find-path/ tal que >>> >>> (find-path 'C 'D sample-graph) produza '(C D) >>> (find-path 'E 'D sample-graph) produza '((E F D) (E C D)) >>> (find-path 'C 'G sample-graph) produza nil >>> >>> Quando terminar de fazer, veja o tempo que levou. >> >> É para resolver usando Common Lisp, ou o Lisp simples (como do último >> exercício)? Tens de me dizer isso. >> >> Também é para criar apenas uma função? Recursiva? Ou posso usar >> quaisquer outras funções? > > Como primeira versão, use apenas recursão, cons, cond, car, cdr e essas > coisas. Vamos dar uma olhada no algoritmo primeiro de uma forma pura. > >>> Já entendi. Você quer brincar de criptografia. Podemos brincar. Por >>> que você não explicou antes? Eis minha chave: >>> >>> -----BEGIN RSA PRIVATE KEY----- >>> e4B...^C^C >>> >>> Lol! Essa foi por pouco. (Estão rindo de quê? Tenho enorme >>> experiência com criptografia. Ridículo.) Lol. >> >> Ahahahah! Essa foi boa! >> >>> -----BEGIN PUBLIC KEY----- >>> MIIBIDANBgkqhkiG9w0BAQEFAAOCAQ0AMIIBCAKCAQEA0eTpkgBTghWSEr8UsoqX >>> yTac3Cx3QBal/UG5xbP/6oaWo9f3uzS5smvzN6uBopjeDxf7YqFLmXeIqk1kfBd0 >>> osFhMhFnGqsLnfQ6q+Kv0qMMOa9cWC2V53K5yoQ3EoxR1kJJ8wDmsc/Dio7Uqz/f >>> Wb1vXIrjzqCuwbHEeu0A4cqCh9GWdcgUubbzgN5h/SNMkrWl9nikyyxqK7zOjIm3 >>> 6ET5Ag4c3Zwp9w1+wMpxz39vdAtp82knQuVgyBwKTJX4U15NTWhdk09tXI8i/e8d >>> JtZXk8SDY5rYgELryZvecPMH5ik03z+8i09vuga/IelpZ6w2GmxM20yDFNzBF84F >>> iQIBJQ== >>> -----END PUBLIC KEY----- >> >> Esta chave pública é inválida. O meu GnuPG não a importa. > > Que erro ele dá? Será que ele está querendo o tipo da chave? É uma > RSA. Eis o módulo e o expoente público: O GnuPG só aceita chaves geradas pela norma OpenPGP. Não obtenho qualquer erro, só diz "0 chaves importadas". Deixa lá.