{"id":622,"date":"2010-10-20T17:22:48","date_gmt":"2010-10-20T17:22:48","guid":{"rendered":"http:\/\/cncodingdojo.wordpress.com\/?p=380"},"modified":"2010-11-17T16:24:32","modified_gmt":"2010-11-17T18:24:32","slug":"kata-11-espiral","status":"publish","type":"post","link":"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/kata-11-espiral\/","title":{"rendered":"Coding Dojo #11: Espiral"},"content":{"rendered":"<p>E terminamos mais um dojo, tivemos nesse mais um <a title=\"palestra rel\u00e2mpago) \u00e9 uma apresenta\u00e7\u00e3o curta\" href=\"http:\/\/pt.wikipedia.org\/wiki\/Lightning_Talk\" target=\"_blank\"><strong>Lightning Talk<\/strong><\/a>, com a <a href=\"http:\/\/cncodingdojo.wordpress.com\/author\/lucihana\/\">Luciana Mendes<\/a> e o <a href=\"http:\/\/cncodingdojo.wordpress.com\/author\/carlostumulto\/\">Carlos Eduardo<\/a>, que falaram sobre a filosofia do Python e sobre sites que o utilizam. Desta vez foi escolhido um Kata de maior dificuldade, que apesar de f\u00e1cil entendimento foi dif\u00edcil implementa\u00e7\u00e3o. Tamb\u00e9m foi filmado a apresenta\u00e7\u00e3o do <strong>Lightning Talk <\/strong>(infelizmente o som do v\u00eddeo ficou baixo)<strong>:<\/strong><\/p>\n<p><strong><em>Parte 1 &#8211; Luciana falando sobre a Filosofia do Python<\/em><br \/>\n<\/strong><\/p>\n<p><object width=\"480\" height=\"385\"><param name=\"movie\" value=\"http:\/\/www.youtube.com\/v\/ZwemYXTFOm4\"><\/param><param name=\"allowFullScreen\" value=\"true\"><\/param><param name=\"allowscriptaccess\" value=\"always\"><\/param><embed src=\"http:\/\/www.youtube.com\/v\/ZwemYXTFOm4\" type=\"application\/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"480\" height=\"385\"><\/embed><\/object><\/p>\n<p><strong><em>Parte 2 &#8211; Carlos falando sobre empresas que utilizam Python<\/em><\/strong><\/p>\n<p><object width=\"480\" height=\"385\"><param name=\"movie\" value=\"http:\/\/www.youtube.com\/v\/iIAl9toRlZg\"><\/param><param name=\"allowFullScreen\" value=\"true\"><\/param><param name=\"allowscriptaccess\" value=\"always\"><\/param><embed src=\"http:\/\/www.youtube.com\/v\/iIAl9toRlZg\" type=\"application\/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"480\" height=\"385\"><\/embed><\/object><\/p>\n<div>\n<table border=\"0\" width=\"100%\">\n<tbody>\n<tr>\n<td>\n<h3 style=\"text-align:center\">Problema: Espiral<strong><span style=\"font-size: large; color: #c0ffff;\"><a name=\"SECTION0001000000000000000000\"><\/a><br \/>\n<\/span><\/strong><\/h3>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>O jogo de Espiral \u00e9 jogado em uma grade quadrada. Peda\u00e7os s\u00e3o colocados na grade e os movimentos s\u00e3o realizados de acordo com a posi\u00e7\u00e3o dos peda\u00e7os na grade. Contudo, o sistema de coordenadas do jogo de Espiral \u00e9 um pouco diferente dos sistemas de outros jogos de tabuleiro tradicionais, tais como xadrez.<\/p>\n<p>O esquema de numera\u00e7\u00e3o de c\u00e9lulas segue uma espiral, come\u00e7ando a partir do centro da grade em sentido anti-hor\u00e1rio. A figura a seguir ilustra o esquema de numera\u00e7\u00e3o das c\u00e9lulas.<\/p>\n<p style=\"text-align:center\"><a href=\"http:\/\/blog.cancaonova.com\/desenvolvimentoti\/files\/2010\/11\/wanderleyespiral.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-878\" title=\"wanderleyespiral\" src=\"http:\/\/blog.cancaonova.com\/desenvolvimentoti\/files\/2010\/11\/wanderleyespiral.png\" alt=\"\" width=\"175\" height=\"175\" \/><\/a><\/p>\n<p style=\"text-align:left\">O  objetivo \u00e9,  dadas as  coordenadas de  um c\u00e9lula  do jogo  Espiral, encontre suas coordenadas cartesianas (a linha <code>1<\/code> \u00e9 a mais abaixo e a coluna <code>1<\/code> \u00e9 a mais a esquerda).<\/p>\n<h3><span style=\"color: #000000;\"><a name=\"SECTION0001001000000000000000\"> Entrada<\/a> <\/span><\/h3>\n<p>A  entrada  \u00e9  uma  s\u00e9rie  de   linhas.  Cada  linha  \u00e9  composta  por dois n\u00fameros:  <code>SZ<\/code> e  <code>P<\/code>. <code>SZ<\/code> \u00e9 o tamanho  da borda  da grade  e  \u00e9 um  n\u00famero  \u00edmpar n\u00e3o  maior do  que <code>1000000<\/code>.  <code>P<\/code> \u00e9  a  posi\u00e7\u00e3o  espiral da  c\u00e9lula nessa grade.  A linha  onde <code>SZ  = P  = 0<\/code> marca o  fim da entrada (e n\u00e3o \u00e9 parte do conjunto de dados de entrada).<\/p>\n<h3><span style=\"color: #000000;\"><a name=\"SECTION0001002000000000000000\"> Output<\/a> <\/span><\/h3>\n<p>Para cada  linha no conjunto  de dados  da entrada, seu  programa deve imprimir  uma  linha  <code>\"Line  =  X,  column  =  Y.\"<\/code>,  onde <code>X<\/code> e <code>Y<\/code> s\u00e3o  as  coordenadas cartesianas  da c\u00e9lula correspondente.<\/p>\n<h3><span style=\"color: #000000;\"><a name=\"SECTION0001003000000000000000\"> Exemplo de Entrada<\/a> <\/span><\/h3>\n<pre>\r\n<pre>3 1\r\n3 3\r\n3 9\r\n5 9\r\n5 10\r\n0 0<\/pre>\n<h3><span style=\"color: #000000;\"><a name=\"SECTION0001004000000000000000\"> Sample Output<\/a> <\/span><\/h3>\n<pre>\r\n<pre>Line = 2, column = 2.\r\nLine = 3, column = 1.\r\nLine = 3, column = 3.\r\nLine = 4, column = 4.\r\nLine = 5, column = 4.<\/pre>\n<\/div>\n<p><strong>Retrospectiva:<\/strong><\/p>\n<p><strong>Bom:<\/strong><\/p>\n<ul>\n<li>Lighting Talk<\/li>\n<li>DR<\/li>\n<li>Retorno Externo Positivo<\/li>\n<\/ul>\n<p><strong>Ruim:<\/strong><\/p>\n<ul>\n<li>Perdendo muito tempo discutindo a l\u00f3gica<\/li>\n<li>Pensar no &#8220;Como fazer&#8221; e n\u00e3o no &#8220;O que fazer&#8221;<\/li>\n<li>Desafio Complexo<\/li>\n<li>Influ\u00eancia na escolha<\/li>\n<li>N\u00e3o foi seguido o Yagmi<\/li>\n<li>Achar solu\u00e7\u00e3o individualmente<\/li>\n<li>Excesso de planejamento<\/li>\n<li>Alguns n\u00e3o sabiam o que fazer<\/li>\n<\/ul>\n<p><strong>Para pr\u00f3ximos:<\/strong><\/p>\n<p><strong>Dados do encontro:<\/strong><\/p>\n<p>Organizadores:  <a title=\"Carlos Eduardo\" href=\"http:\/\/twitter.com\/carlospereira\" target=\"_blank\">Carlos Eduardo<\/a> e<a title=\"Luciana Mendes\" href=\"http:\/\/twitter.com\/lucihana\" target=\"_blank\"> Luciana Mendes<\/a><\/p>\n<p>Participantes:<a title=\"Carlos Eduardo\" href=\"http:\/\/twitter.com\/carlos_tumulto\" target=\"_blank\"> Carlos Eduardo<\/a>, <a title=\"Luciana Mendes\" href=\"http:\/\/twitter.com\/lucihana\" target=\"_blank\">Luciana Mendes<\/a>, <a title=\"Marco Moura\" href=\"http:\/\/twitter.com\/marcomoura\" target=\"_blank\">Marco Moura<\/a>, <a title=\"Nat\u00e1lia Marcondes\" href=\"http:\/\/twitter.com\/nati57\" target=\"_blank\">Nat\u00e1lia Marcondes<\/a>, <a title=\"Patr\ufffdcia Carvalho\" href=\"http:\/\/twitter.com\/patfcarv\" target=\"_blank\">Patricia Carvalho<\/a>, <a title=\"Rafael Salom\u00e3o\" href=\"http:\/\/twitter.com\/razzi\" target=\"_blank\">Rafael Salom\u00e3o<\/a><\/p>\n<p>Kata: Espiral (<strong><strong><span style=\"font-size: large; color: #c0ffff;\"><a name=\"SECTION0001000000000000000000\"><\/a><\/span><\/strong><\/strong><a title=\"http:\/\/br.spoj.pl\/problems\/ESPIRAL\/\" href=\"http:\/\/br.spoj.pl\/problems\/ESPIRAL\/\" target=\"_blank\">http:\/\/br.spoj.pl\/problems\/ESPIRAL\/<\/a>)<\/p>\n<p>C\u00f3digo fonte : <a href=\"http:\/\/gist.github.com\/636755\" target=\"_blank\">http:\/\/gist.github.com\/636755<\/a><\/p>\n<p><strong>Fotos:<\/strong><\/p>\n\n\t\t<style type=\"text\/css\">\n\t\t\t#gallery-1 {\n\t\t\t\tmargin: auto;\n\t\t\t}\n\t\t\t#gallery-1 .gallery-item {\n\t\t\t\tfloat: left;\n\t\t\t\tmargin-top: 10px;\n\t\t\t\ttext-align: center;\n\t\t\t\twidth: 33%;\n\t\t\t}\n\t\t\t#gallery-1 img {\n\t\t\t\tborder: 2px solid #cfcfcf;\n\t\t\t}\n\t\t\t#gallery-1 .gallery-caption {\n\t\t\t\tmargin-left: 0;\n\t\t\t}\n\t\t\t\/* see gallery_shortcode() in wp-includes\/media.php *\/\n\t\t<\/style>\n\t\t<div id='gallery-1' class='gallery galleryid-622 gallery-columns-3 gallery-size-thumbnail'><dl class='gallery-item'>\n\t\t\t<dt class='gallery-icon landscape'>\n\t\t\t\t<a href='https:\/\/blog.cancaonova.com\/desenvolvimentoti\/kata-11-espiral\/wanderleyespiral\/'><img loading=\"lazy\" decoding=\"async\" width=\"150\" height=\"150\" src=\"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/files\/\/var\/www\/blog.cancaonova.com\/wp-content\/blogs.dir\/3309\/files\/\/2010\/11\/wanderleyespiral-150x150.png\" class=\"attachment-thumbnail size-thumbnail\" alt=\"\" srcset=\"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/files\/\/var\/www\/blog.cancaonova.com\/wp-content\/blogs.dir\/3309\/files\/\/2010\/11\/wanderleyespiral-150x150.png 150w, https:\/\/blog.cancaonova.com\/desenvolvimentoti\/files\/\/var\/www\/blog.cancaonova.com\/wp-content\/blogs.dir\/3309\/files\/\/2010\/11\/wanderleyespiral.png 175w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/a>\n\t\t\t<\/dt><\/dl>\n\t\t\t<br style='clear: both' \/>\n\t\t<\/div>\n\n<div>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong><img decoding=\"async\" src=\"http:\/\/cncodingdojo.wordpress.com\/wp-includes\/js\/tinymce\/plugins\/wpgallery\/img\/t.gif\" alt=\"\" \/><\/strong><br \/>\n<strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/p>\n<p><strong> <\/strong><\/div>\n","protected":false},"excerpt":{"rendered":"<p>E terminamos mais um dojo, tivemos nesse mais um Lightning Talk, com a Luciana Mendes e o Carlos Eduardo, que falaram sobre a filosofia do Python e sobre sites que o utilizam. Desta vez foi escolhido um Kata de maior&#8230;<\/p>\n","protected":false},"author":4492,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[36209,36211],"tags":[103619,103621],"_links":{"self":[{"href":"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/wp-json\/wp\/v2\/posts\/622"}],"collection":[{"href":"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/wp-json\/wp\/v2\/users\/4492"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/wp-json\/wp\/v2\/comments?post=622"}],"version-history":[{"count":9,"href":"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/wp-json\/wp\/v2\/posts\/622\/revisions"}],"predecessor-version":[{"id":881,"href":"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/wp-json\/wp\/v2\/posts\/622\/revisions\/881"}],"wp:attachment":[{"href":"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/wp-json\/wp\/v2\/media?parent=622"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/wp-json\/wp\/v2\/categories?post=622"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.cancaonova.com\/desenvolvimentoti\/wp-json\/wp\/v2\/tags?post=622"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}