ProjectEuler is renamed to project_euler
This commit is contained in:
88
project_euler/pe/p287.html
Normal file
88
project_euler/pe/p287.html
Normal file
@@ -0,0 +1,88 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="author" content="Colin Hughes" />
|
||||
<meta name="description" content="A website dedicated to the fascinating world of mathematics and programming" />
|
||||
<meta name="keywords" content="programming,mathematics,problems,puzzles" />
|
||||
|
||||
<title>Problem 287 - Project Euler</title>
|
||||
<link rel="shortcut icon" href="http://projecteuler.net/favicon.ico" />
|
||||
<link rel="stylesheet" type="text/css" href="style_main.css" />
|
||||
<link rel="stylesheet" type="text/css" href="style_light.css" />
|
||||
<script type="text/x-mathjax-config">
|
||||
MathJax.Hub.Config({
|
||||
jax: ["input/TeX", "output/HTML-CSS"],
|
||||
tex2jax: {
|
||||
inlineMath: [ ["$","$"], ["\\(","\\)"] ],
|
||||
displayMath: [ ["$$","$$"], ["\\[","\\]"] ],
|
||||
processEscapes: true
|
||||
},
|
||||
"HTML-CSS": { availableFonts: ["TeX"] }
|
||||
});
|
||||
</script>
|
||||
|
||||
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS_HTML">
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<div id="container">
|
||||
|
||||
<div id="nav" class="noprint">
|
||||
<ul>
|
||||
<li><a href="about" title="About" accesskey="h">About</a></li>
|
||||
<li><a href="register" title="Register" accesskey="1">Register</a></li>
|
||||
<li id="current"><a href="problems" title="Problems" accesskey="2">Problems</a></li>
|
||||
<li><a href="login" title="Login" accesskey="3">Login</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="info_panel"><a href="rss2_euler.xml"><img src="images/icon_rss.png" alt="RSS Feed" title="RSS Feed" /></a><a href="secure=d1d4c"><img src="images/icon_lock.png" alt="Use secure connection" title="Use secure connection" /></a></div>
|
||||
|
||||
<div id="logo" class="noprint">
|
||||
<img src="images/pe_banner_light.png" alt="Project Euler .net" />
|
||||
</div>
|
||||
|
||||
<div id="content">
|
||||
<div style="text-align:center;" class="print"><img src="images/pe_banner.png" alt="projecteuler.net" style="border:none;" /></div>
|
||||
<h2>Quadtree encoding (a simple compression algorithm)</h2><div class="info" style="cursor:help;width:200px;margin-bottom:10px;"><h3>Problem 287</h3><span style="width:300px;color:#666;">Published on Saturday, 10th April 2010, 09:00 am; Solved by 786</span></div>
|
||||
<div class="problem_content" role="problem">
|
||||
<p>The quadtree encoding allows us to describe a 2<sup><var>N</var></sup><img src='images/symbol_times.gif' width='9' height='9' alt='×' border='0' style='vertical-align:middle;' />2<sup><var>N</var></sup> black and white image as a sequence of bits (0 and 1). Those sequences are to be read from left to right like this:
|
||||
<ul><li>the first bit deals with the complete 2<sup><var>N</var></sup><img src='images/symbol_times.gif' width='9' height='9' alt='×' border='0' style='vertical-align:middle;' />2<sup><var>N</var></sup> region;</li>
|
||||
<li>"0" denotes a split:
|
||||
<br />the current 2<sup><var>n</var></sup><img src='images/symbol_times.gif' width='9' height='9' alt='×' border='0' style='vertical-align:middle;' />2<sup><var>n</var></sup> region is divided into 4 sub-regions of dimension 2<sup><var>n</var>-1</sup><img src='images/symbol_times.gif' width='9' height='9' alt='×' border='0' style='vertical-align:middle;' />2<sup><var>n</var>-1</sup>,<br />
|
||||
the next bits contains the description of the top left, top right, bottom left and bottom right sub-regions - in that order;</li>
|
||||
<li>"10" indicates that the current region contains only black pixels;</li>
|
||||
<li>"11" indicates that the current region contains only white pixels.</li></ul></p>
|
||||
|
||||
<p>Consider the following 4<img src='images/symbol_times.gif' width='9' height='9' alt='×' border='0' style='vertical-align:middle;' />4 image (colored marks denote places where a split can occur):</p>
|
||||
<div align='center'><img src="project/images/p_287_quadtree.gif" /></div>
|
||||
<p>This image can be described by several sequences, for example :<bp />
|
||||
"<span style='color:red;'><b>0</b></span><span style='color:blue;'><b>0</b></span>10101010<span style='color:green;'><b>0</b></span>1011111011<span style='color:orange;'><b>0</b></span>10101010", of length 30, or<br />
|
||||
"<span style='color:red;'><b>0</b></span>10<span style='color:green;'><b>0</b></span>101111101110", of length 16, which is the minimal sequence for this image.</p>
|
||||
|
||||
<p>For a positive integer <var>N</var>, define <var>D<sub>N</sub></var> as the 2<sup><var>N</var></sup><img src='images/symbol_times.gif' width='9' height='9' alt='×' border='0' style='vertical-align:middle;' />2<sup><var>N</var></sup> image with the following coloring scheme:
|
||||
<ul><li>the pixel with coordinates <var>x</var> = 0, <var>y</var> = 0 corresponds to the bottom left pixel,</li>
|
||||
<li>if (<var>x</var> - 2<sup><var>N</var>-1</sup>)<sup>2</sup> + (<var>y</var> - 2<sup><var>N</var>-1</sup>)<sup>2</sup> <img src='images/symbol_le.gif' width='10' height='12' alt='≤' border='0' style='vertical-align:middle;' /> 2<sup>2<var>N</var>-2</sup> then the pixel is black,</li>
|
||||
<li>otherwise the pixel is white.</li></ul></p>
|
||||
|
||||
<p>What is the length of the minimal sequence describing <var>D</var><sub>24</sub> ?</p>
|
||||
</div><br />
|
||||
<br /></div>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<div id="footer" class="noprint">
|
||||
<a href="copyright">Project Euler Copyright Information</a>
|
||||
<!--/Creative Commons License--><!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
|
||||
<Work rdf:about="">
|
||||
<license rdf:resource="http://creativecommons.org/licenses/by-nc-sa/2.0/uk/" />
|
||||
<dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
|
||||
</Work>
|
||||
<License rdf:about="http://creativecommons.org/licenses/by-nc-sa/2.0/uk/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><prohibits rdf:resource="http://web.resource.org/cc/CommercialUse"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF> -->
|
||||
</div>
|
||||
</div>
|
||||
<div style="height:1px;"> </div></body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user