aboutsummaryrefslogblamecommitdiffstats
path: root/README.html
blob: 6d0885ab16cd3bc8931268bf3d9150db46c6340e (plain) (tree)
1
2
3
4
5



                                                                    
                                                 

































































































































































































































































































































                                                                                                


                                                                          










                                                                   
                       

                      






                      

                                                    




                                      



                                             















































































                                                                

 

































































































































































































































                                                                                            
                     














                                                                                                                 











                                                                                                     




                                                                          
            





                                   




                                                       


                        
                                                                                       



      
                                                                                               

      









                                                                                      


                        
                                                                                        



      
                                                                                                          



      
                                             



      
                                                                                             


            











                                                                                                                                               


                        
                                                                 



      
                                                                 

      


                                                              
                                  








                                                                                                                                           

     

                                                                  
     
                        

     
                                          



      
                                                                          



      
                                                   

      

     
                                      



      
                                                                  

      



            














                                                                                                                                       



                        
                                                    



      
                                           





            

                                                                                                               
     
      

     


                                                                                                           

      

























                                                                                                                                                                        

     
                                                                                           



      
                                                                                           

      





                                                                                    
                                  




























                                                                                                                                                     
                                  























































                                                                                                                                                                                          

     
    



      
      



      
     


            
                                                        

     
                                                                                                                                       
     
      

     
                                                                                                                                            

      

                                                          

     
                                                                        
     
                        

     
                                     





            


                                                     


                        
         

      

     
         



      
         

      

                                                        

     
                                                                                                                                          


            
                                                          

     
                                                                        
     
                        

     
                                     



      
                                     

      







                                                     

     
         



      
            



      
         

      

                                                        

     
                                                                                                                                          

      

                                                          

     
                                                                        
     
                        

     
                                     



      
                                     



      
                                     

      







                                                     

     
         



      
            



      
         

      

                                                        

     
                                                                                                                                          

      

                                                          

     
                                                                        
     
                        

     
                                     

      

     
                                     



      
                                     



      
                                     


            

            
       

                    





                                                                                                              

     
                                                                   

      





                                                                          

     
                                                  

      
            
       



                                                                

     
                                                                          


            




                                                              

     
                                                            
     






                                                        

     
                                                                   

      

















                                                                                    

     
                                                            

      
            

       
                    





                                                                                                              

     
                                                             



      
                                                             


            
       
       
                    




                                                                                                     

     
        
     
      

     
            



      
              



      
               

      



          


      
      
     





      

     
          



      
          



      
       


            




                                                          


            


                                                        

     
                                                          


            
       



                                                                                      

     
                                                           
     








                                                                                                                                       

     
                                                                   

      





                                                                                            

     
                                                                   



      
                                                                    

      





                                                                                                                                              

     
                                                                         


            








                                                                                  


            



                                                          

     
         



      
                     


            







                                                        

     
                                              
     





                                                        

     
                                              



      
                                             

      

     
                                               

      

     
                                                



      
                                                


            
       








                                                        
       








                                                        
       


                                                        

     
                                                             


            
       
       
       

       


                          




























                                                                                                                                                             
                                                                                          







                                                                                                                                                             
                                                                                          

                                                                                                                                             

















                                                                                                                                             


         










                                                       




       


            



                               
                                     



        
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="generator" content="AsciiDoc 8.6.9">
<title>meow</title>
<style type="text/css">
/*
 * AsciiDoc 'volnitsky' theme for xhtml11 and html5 backends.
 * Based on css from http://volnitsky.com, which was in turn based on default
 * theme from AsciiDoc
 *
 * FIXME: The styling is still a bit rough in places.
 *
 */

/* Default font. */
body {
  font-family: Georgia,"Times New Roman",Times,serif;
}

/* Title font. */
h1, h2, h3, h4, h5, h6,
div.title, caption.title,
thead, p.table.header,
#toctitle,
#author, #revnumber, #revdate, #revremark,
#footer {
  font-family: Candara,Arial,sans-serif;
}


#toc a {
    border-bottom: 1px dotted #999999;
    color: #3A3A4D !important;
    text-decoration: none !important;
}
#toc a:hover {
    border-bottom: 1px solid #6D4100;
    color: #6D4100 !important;
    text-decoration: none !important;
}
a { color: #666688; text-decoration: none; border-bottom: 1px dotted #666688; }
a:visited { color: #615FA0; border-bottom: 1px dotted #615FA0; }
a:hover { color: #6D4100; border-bottom: 1px solid #6D4100; }

em {
  font-style: italic;
  color: #444466;
}

strong {
  font-weight: bold;
  color: #444466;
}

h1, h2, h3, h4, h5, h6 {
  color: #666688;
  margin-bottom: 0.5em;
  line-height: 1.3;
  letter-spacing:+0.15em;
}

h1, h2, h3 { border-bottom: 2px solid #ccd; }
h2 { padding-top: 0.5em; }
h3 { float: left; }
h3 + * { clear: left; }

div.sectionbody {
  margin-left: 0;
}

hr {
  border: 1px solid #444466;
}

p {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}

ul, ol, li > p {
  margin-top: 0;
}

pre {
  padding: 0;
  margin: 0;
}

#author {
  color: #444466;
  font-weight: bold;
  font-size: 1.1em;
}

#footer {
  font-size: small;
  border-top: 2px solid silver;
  padding-top: 0.5em;
  margin-top: 4.0em;
}

#footer-text {
  float: left;
  padding-bottom: 0.5em;
}

#footer-badges {
  float: right;
  padding-bottom: 0.5em;
}

#preamble {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}

div.tableblock, div.imageblock, div.exampleblock, div.verseblock,
div.quoteblock, div.literalblock, div.listingblock, div.sidebarblock,
div.admonitionblock {
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}

div.admonitionblock {
  margin-top: 2.5em;
  margin-bottom: 2.5em;
}

div.content { /* Block element content. */
  padding: 0;
}

/* Block element titles. */
div.title, caption.title {
  color: #444466;
  font-weight: bold;
  text-align: left;
  margin-top: 1.0em;
  margin-bottom: 0.5em;
}
div.title + * {
  margin-top: 0;
}

td div.title:first-child {
  margin-top: 0.0em;
}
div.content div.title:first-child {
  margin-top: 0.0em;
}
div.content + div.title {
  margin-top: 0.0em;
}

div.sidebarblock > div.content {
  background: #ffffee;
  border: 1px solid silver;
  padding: 0.5em;
}

div.listingblock > div.content {
  border: 1px solid silver;
  background: #f4f4f4;
  padding: 0.5em;
}

div.quoteblock {
  padding-left: 2.0em;
  margin-right: 10%;
}
div.quoteblock > div.attribution {
  padding-top: 0.5em;
  text-align: right;
}

div.verseblock {
  padding-left: 2.0em;
  margin-right: 10%;
}
div.verseblock > pre.content {
  font-family: inherit;
}
div.verseblock > div.attribution {
  padding-top: 0.75em;
  text-align: left;
}
/* DEPRECATED: Pre version 8.2.7 verse style literal block. */
div.verseblock + div.attribution {
  text-align: left;
}

div.admonitionblock .icon {
  vertical-align: top;
  font-size: 1.1em;
  font-weight: bold;
  text-decoration: underline;
  color: #444466;
  padding-right: 0.5em;
}
div.admonitionblock td.content {
  padding-left: 0.5em;
  border-left: 2px solid silver;
}

div.exampleblock > div.content {
  border-left: 2px solid silver;
  padding: 0.5em;
}

div.imageblock div.content { padding-left: 0; }
span.image img { border-style: none; }
a.image:visited { color: white; }

dl {
  margin-top: 0.8em;
  margin-bottom: 0.8em;
}
dt {
  margin-top: 0.5em;
  margin-bottom: 0;
  font-style: normal;
  color: #444466;
}
dd > *:first-child {
  margin-top: 0.1em;
}

ul, ol {
    list-style-position: outside;
}
ol.arabic {
  list-style-type: decimal;
}
ol.loweralpha {
  list-style-type: lower-alpha;
}
ol.upperalpha {
  list-style-type: upper-alpha;
}
ol.lowerroman {
  list-style-type: lower-roman;
}
ol.upperroman {
  list-style-type: upper-roman;
}

div.compact ul, div.compact ol,
div.compact p, div.compact p,
div.compact div, div.compact div {
  margin-top: 0.1em;
  margin-bottom: 0.1em;
}

div.tableblock > table {
  border: 3px solid #444466;
}
thead {
  font-weight: bold;
  color: #444466;
}
tfoot {
  font-weight: bold;
}
td > div.verse {
  white-space: pre;
}
p.table {
  margin-top: 0;
}
/* Because the table frame attribute is overriden by CSS in most browsers. */
div.tableblock > table[frame="void"] {
  border-style: none;
}
div.tableblock > table[frame="hsides"] {
  border-left-style: none;
  border-right-style: none;
}
div.tableblock > table[frame="vsides"] {
  border-top-style: none;
  border-bottom-style: none;
}


div.hdlist {
  margin-top: 0.8em;
  margin-bottom: 0.8em;
}
div.hdlist tr {
  padding-bottom: 15px;
}
dt.hdlist1.strong, td.hdlist1.strong {
  font-weight: bold;
}
td.hdlist1 {
  vertical-align: top;
  font-style: normal;
  padding-right: 0.8em;
  color: #444466;
}
td.hdlist2 {
  vertical-align: top;
}
div.hdlist.compact tr {
  margin: 0;
  padding-bottom: 0;
}

.comment {
  background: yellow;
}

@media print {
  #footer-badges { display: none; }
}

#toctitle {
  color: #666688;
  font-size: 1.2em;
  font-weight: bold;
  margin-top: 1.0em;
  margin-bottom: 0.1em;
}

div.toclevel1, div.toclevel2, div.toclevel3, div.toclevel4 { margin-top: 0; margin-bottom: 0; }
div.toclevel1 { margin-top: 0.3em; margin-left: 0; font-size: 1.0em; }
div.toclevel2 { margin-top: 0.25em; margin-left: 2em; font-size: 0.9em; }
div.toclevel3 { margin-left: 4em; font-size: 0.8em; }
div.toclevel4 { margin-left: 6em; font-size: 0.8em; }

body {
  margin: 1em 5%;
  max-width:  55em;
  padding-left: 0;

}

.monospaced, tt, div.listingblock > div.content {
  font-family:  Consolas, "Andale Mono", "Courier New", monospace;
  color: #004400;
  background: #f4f4f4;
  max-width: 80em;
  line-height: 1.2em;
}

.paragraph p  {
  line-height: 1.5em;
  margin-top: 1em;
}

.paragraph p, li, dd, .content { max-width: 45em; }
.admonitionblock               { max-width: 35em; }

div.sectionbody div.ulist > ul > li {
  list-style-type: square;
  color: #aaa;
}
  div.sectionbody div.ulist >  ul > li > * {
    color: black;
    /*font-size: 50%;*/
  }


div.sectionbody div.ulist > ul > li div.ulist > ul > li {
  color: #ccd ;
}
  div.sectionbody div.ulist > ul > li div.ulist > ul > li > * {
    color: black ;
  }

em {
  font-style: normal ! important;
  font-weight: bold ! important;
  color: #662222   ! important;
  letter-spacing:+0.08em ! important;
}


/*
 * html5 specific
 *
 * */

table.tableblock {
  margin-top: 1.0em;
  margin-bottom: 1.5em;
}
thead, p.tableblock.header {
  font-weight: bold;
  color: #666688;
}
p.tableblock {
  margin-top: 0;
}
table.tableblock {
  border-width: 3px;
  border-spacing: 0px;
  border-style: solid;
  border-color: #444466;
  border-collapse: collapse;
}
th.tableblock, td.tableblock {
  border-width: 1px;
  padding: 4px;
  border-style: solid;
  border-color: #444466;
}

table.tableblock.frame-topbot {
  border-left-style: hidden;
  border-right-style: hidden;
}
table.tableblock.frame-sides {
  border-top-style: hidden;
  border-bottom-style: hidden;
}
table.tableblock.frame-none {
  border-style: hidden;
}

th.tableblock.halign-left, td.tableblock.halign-left {
  text-align: left;
}
th.tableblock.halign-center, td.tableblock.halign-center {
  text-align: center;
}
th.tableblock.halign-right, td.tableblock.halign-right {
  text-align: right;
}

th.tableblock.valign-top, td.tableblock.valign-top {
  vertical-align: top;
}
th.tableblock.valign-middle, td.tableblock.valign-middle {
  vertical-align: middle;
}
th.tableblock.valign-bottom, td.tableblock.valign-bottom {
  vertical-align: bottom;
}




@media screen {
  body {
    max-width: 50em; /* approximately 80 characters wide */
    margin-left: 16em;
  }

  #toc {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    width: 13em;
    padding: 0.5em;
    padding-bottom: 1.5em;
    margin: 0;
    overflow: auto;
    border-right: 3px solid #f8f8f8;
    background-color: white;
  }

  #toc .toclevel1 {
    margin-top: 0.5em;
  }

  #toc .toclevel2 {
    margin-top: 0.25em;
    display: list-item;
    color: #aaaaaa;
  }

  #toctitle {
    margin-top: 0.5em;
  }
}
</style>
<script type="text/javascript">
/*<![CDATA[*/
var asciidoc = {  // Namespace.

/////////////////////////////////////////////////////////////////////
// Table Of Contents generator
/////////////////////////////////////////////////////////////////////

/* Author: Mihai Bazon, September 2002
 * http://students.infoiasi.ro/~mishoo
 *
 * Table Of Content generator
 * Version: 0.4
 *
 * Feel free to use this script under the terms of the GNU General Public
 * License, as long as you do not remove or alter this notice.
 */

 /* modified by Troy D. Hanson, September 2006. License: GPL */
 /* modified by Stuart Rackham, 2006, 2009. License: GPL */

// toclevels = 1..4.
toc: function (toclevels) {

  function getText(el) {
    var text = "";
    for (var i = el.firstChild; i != null; i = i.nextSibling) {
      if (i.nodeType == 3 /* Node.TEXT_NODE */) // IE doesn't speak constants.
        text += i.data;
      else if (i.firstChild != null)
        text += getText(i);
    }
    return text;
  }

  function TocEntry(el, text, toclevel) {
    this.element = el;
    this.text = text;
    this.toclevel = toclevel;
  }

  function tocEntries(el, toclevels) {
    var result = new Array;
    var re = new RegExp('[hH]([1-'+(toclevels+1)+'])');
    // Function that scans the DOM tree for header elements (the DOM2
    // nodeIterator API would be a better technique but not supported by all
    // browsers).
    var iterate = function (el) {
      for (var i = el.firstChild; i != null; i = i.nextSibling) {
        if (i.nodeType == 1 /* Node.ELEMENT_NODE */) {
          var mo = re.exec(i.tagName);
          if (mo && (i.getAttribute("class") || i.getAttribute("className")) != "float") {
            result[result.length] = new TocEntry(i, getText(i), mo[1]-1);
          }
          iterate(i);
        }
      }
    }
    iterate(el);
    return result;
  }

  var toc = document.getElementById("toc");
  if (!toc) {
    return;
  }

  // Delete existing TOC entries in case we're reloading the TOC.
  var tocEntriesToRemove = [];
  var i;
  for (i = 0; i < toc.childNodes.length; i++) {
    var entry = toc.childNodes[i];
    if (entry.nodeName.toLowerCase() == 'div'
     && entry.getAttribute("class")
     && entry.getAttribute("class").match(/^toclevel/))
      tocEntriesToRemove.push(entry);
  }
  for (i = 0; i < tocEntriesToRemove.length; i++) {
    toc.removeChild(tocEntriesToRemove[i]);
  }

  // Rebuild TOC entries.
  var entries = tocEntries(document.getElementById("content"), toclevels);
  for (var i = 0; i < entries.length; ++i) {
    var entry = entries[i];
    if (entry.element.id == "")
      entry.element.id = "_toc_" + i;
    var a = document.createElement("a");
    a.href = "#" + entry.element.id;
    a.appendChild(document.createTextNode(entry.text));
    var div = document.createElement("div");
    div.appendChild(a);
    div.className = "toclevel" + entry.toclevel;
    toc.appendChild(div);
  }
  if (entries.length == 0)
    toc.parentNode.removeChild(toc);
},


/////////////////////////////////////////////////////////////////////
// Footnotes generator
/////////////////////////////////////////////////////////////////////

/* Based on footnote generation code from:
 * http://www.brandspankingnew.net/archive/2005/07/format_footnote.html
 */

footnotes: function () {
  // Delete existing footnote entries in case we're reloading the footnodes.
  var i;
  var noteholder = document.getElementById("footnotes");
  if (!noteholder) {
    return;
  }
  var entriesToRemove = [];
  for (i = 0; i < noteholder.childNodes.length; i++) {
    var entry = noteholder.childNodes[i];
    if (entry.nodeName.toLowerCase() == 'div' && entry.getAttribute("class") == "footnote")
      entriesToRemove.push(entry);
  }
  for (i = 0; i < entriesToRemove.length; i++) {
    noteholder.removeChild(entriesToRemove[i]);
  }

  // Rebuild footnote entries.
  var cont = document.getElementById("content");
  var spans = cont.getElementsByTagName("span");
  var refs = {};
  var n = 0;
  for (i=0; i<spans.length; i++) {
    if (spans[i].className == "footnote") {
      n++;
      var note = spans[i].getAttribute("data-note");
      if (!note) {
        // Use [\s\S] in place of . so multi-line matches work.
        // Because JavaScript has no s (dotall) regex flag.
        note = spans[i].innerHTML.match(/\s*\[([\s\S]*)]\s*/)[1];
        spans[i].innerHTML =
          "[<a id='_footnoteref_" + n + "' href='#_footnote_" + n +
          "' title='View footnote' class='footnote'>" + n + "</a>]";
        spans[i].setAttribute("data-note", note);
      }
      noteholder.innerHTML +=
        "<div class='footnote' id='_footnote_" + n + "'>" +
        "<a href='#_footnoteref_" + n + "' title='Return to text'>" +
        n + "</a>. " + note + "</div>";
      var id =spans[i].getAttribute("id");
      if (id != null) refs["#"+id] = n;
    }
  }
  if (n == 0)
    noteholder.parentNode.removeChild(noteholder);
  else {
    // Process footnoterefs.
    for (i=0; i<spans.length; i++) {
      if (spans[i].className == "footnoteref") {
        var href = spans[i].getElementsByTagName("a")[0].getAttribute("href");
        href = href.match(/#.*/)[0];  // Because IE return full URL.
        n = refs[href];
        spans[i].innerHTML =
          "[<a href='#_footnote_" + n +
          "' title='View footnote' class='footnote'>" + n + "</a>]";
      }
    }
  }
},

install: function(toclevels) {
  var timerId;

  function reinstall() {
    asciidoc.footnotes();
    if (toclevels) {
      asciidoc.toc(toclevels);
    }
  }

  function reinstallAndRemoveTimer() {
    clearInterval(timerId);
    reinstall();
  }

  timerId = setInterval(reinstall, 500);
  if (document.addEventListener)
    document.addEventListener("DOMContentLoaded", reinstallAndRemoveTimer, false);
  else
    window.onload = reinstallAndRemoveTimer;
}

}
asciidoc.install(4);
/*]]>*/
</script>
</head>
<body class="article" style="max-width:70em">
<div id="header">
<h1>meow</h1>
<div id="toc">
  <div id="toctitle">Table of Contents</div>
  <noscript><p><b>JavaScript must be enabled in your browser to display the table of contents.</b></p></noscript>
</div>
</div>
<div id="content">
<div class="sect1">
<h2 id="_description">Description</h2>
<div class="sectionbody">
<div class="paragraph"><p>一個不需要, 也不應該先compile成obj files的templates.</p></div>
<div class="ulist"><div class="title">Links</div><ul>
<li>
<p>
<a href="https://github.com/cathook/meow">GitHub</a>
</p>
</li>
<li>
<p>
<a href="http://www.csie.ntu.edu.tw/~b01902109/readme/template_meow/README.html">README.html</a>
</p>
</li>
<li>
<p>
<a href="https://github.com/cathook/meow/archive/master.zip">Download</a>
</p>
</li>
</ul></div>
</div>
</div>
<div class="sect1">
<h2 id="_file_tree">File Tree</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="_latex">LaTex/</h3>
<div class="paragraph"><p>LaTex 相關模板</p></div>
<div class="sect4">
<h5 id="_makefile">Makefile</h5>
<div class="paragraph"><p>環境變數:</p></div>
<div class="ulist"><ul>
<li>
<p>
<span class="monospaced">SOURCE = source.tex</span> 設定 <em>LaTex</em> 源碼檔名
</p>
</li>
<li>
<p>
<span class="monospaced">TARGET = output</span> 設定生出來的 <strong>pdf</strong> 檔名
</p>
</li>
</ul></div>
<div class="admonitionblock">
<table><tr>
<td class="icon">
<div class="title">Note</div>
</td>
<td class="content"><span class="monospaced">TARGET</span> 不需要給副檔名</td>
</tr></table>
</div>
<div class="paragraph"><p>targets:</p></div>
<div class="ulist"><ul>
<li>
<p>
<span class="monospaced">all</span> 生成 <strong><em>&lt;TARGET&gt;</em>.pdf</strong>
</p>
</li>
<li>
<p>
<span class="monospaced">view</span> 用kde-open 把輸出結果開起來(如有需要會先重新編譯)
</p>
</li>
<li>
<p>
<span class="monospaced">clean</span> 清除
</p>
</li>
<li>
<p>
<span class="monospaced">two</span> 編譯兩次, 如果有目錄的話可能會需要用到
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_source_tex">source.tex</h5>
<div class="paragraph"><p>內容為一些我自己定義的設定, 參數設置等等. 另外還有用寫在註解裡面的小筆記</p></div>
</div>
</div>
<div class="sect2">
<h3 id="_asciidoc">asciidoc/</h3>
<div class="paragraph"><p>一些關於asciidoc的example與編譯設定</p></div>
<div class="sect4">
<h5 id="_makefile_2">Makefile</h5>
<div class="paragraph"><p>編譯asciidoc用的, 裡面有兩個環境變數:</p></div>
<div class="ulist"><ul>
<li>
<p>
ASCIIDOC_SOURCE: 指定原始碼, 預設為 <em>example.txt</em>
</p>
</li>
<li>
<p>
ASCIIDOC_OUTPUT: 輸出的檔名, 預設為 <em>output.html</em>
</p>
</li>
</ul></div>
<div class="paragraph"><p>另外還有一個target:</p></div>
<div class="listingblock">
<div class="content"></div></div>
</div>
</div>
<div class="sect2">
<h3 id="_cppmakefile">cppMakefile/</h3>
<div class="paragraph"><div class="title">Description</div><p>這是一個簡單的 <strong>GNU makefile for <em>C++</em> project</strong>
類似AutoTool等工具, 不過又更簡化了, 操作方法是利用GNUMakefile裡的targets
當作指令, 生出一個targets檔, 以後鍵入 <span class="monospaced">make all</span> 就會自動把所有targets都
編譯出來.</p></div>
<div class="ulist"><div class="title">Commands</div><ul>
<li>
<p>
<span class="monospaced">make init</span><br>
初始化, 設定完之後所在位置會多幾個資料夾如下
</p>
<div class="ulist"><ul>
<li>
<p>
<em>bin/</em> 放編譯出來的執行檔
</p>
</li>
<li>
<p>
<em>dep/</em> dependency相關資料, 內容會自動生成, 不用理它
</p>
</li>
<li>
<p>
<em>inc/</em> 自定義的include file放置位置
</p>
</li>
<li>
<p>
<em>src/</em> source code放置位置
</p>
</li>
<li>
<p>
<em>obj/</em> obj file放置位置, 會自動生成, 不用理它
</p>
</li>
</ul></div>
</li>
<li>
<p>
<span class="monospaced">make new NAME=&lt;name&gt; [OBJS=&lt;OBJ_FILES&gt; LIBS=&lt;LIBRARIES&gt;]</span><br>
新增一個target, 須給定目標名 , 並且此Makefile會假定 <span class="monospaced">main() { ... }</span> 放在
<em>src/&lt;name&gt;.cpp</em> 而最終輸出會是 <em>bin/&lt;name&gt;</em> .<br>
關於 <em>OBJS=</em><em>LIBS=</em> 參考下面說明
</p>
</li>
<li>
<p>
<span class="monospaced">make add NAME=&lt;name&gt; [OBJS=&lt;OBJ_FILES&gt; LIBS=&lt;LIBRARIES&gt;]</span><br>
針對target為 <em>&lt;name&gt;</em> 的目標新增需要的 <em>&lt;OBJ_FILES&gt;</em> , 與 <em>&lt;LIBRARIES&gt;</em>.
<em>&lt;LIBRARIES&gt;</em> 的部份會用 <span class="monospaced">pkg-config</span> 去解讀, 例如 <em>&lt;LIBRARIES&gt;</em><em>opencv lapackpp</em> 則link時會被以下指令展開<br>
<span class="monospaced">pkg-config --libs opencv lapackpp</span><br><em>&lt;OBJ_FILES&gt;</em> 的部份則只需要給 <strong>name</strong> 就好, 不需要有完整個 pathname, 例如
例如 <em>&lt;OBJ_FILES&gt;</em><em>a b c</em> 則此makefile會視為
</p>
<div class="ulist"><ul>
<li>
<p>
source code: <em>src/a.cpp src/b.cpp src/c.cpp</em>
</p>
</li>
<li>
<p>
obj file: <em>obj/a.o obj/b.o obj/c.o</em>
</p>
</li>
</ul></div>
</li>
<li>
<p>
<span class="monospaced">make del NAME=&lt;name&gt; [OBJS=&lt;OBJ_FILES&gt; LIBS=&lt;LIBRARIES&gt;]</span><br>
與 add相反, 嘗試將指定target所需的<em>&lt;OBJ_FILES&gt;'和</em>&lt;LIBRARIES&gt;'移除
</p>
</li>
<li>
<p>
<span class="monospaced">make clean</span><br><em>bin/<strong></em> <em>dep/</strong></em> <em>obj/*</em> 清除, 有時候覺得dependency怪怪的
時可以嘗試執行此指令
</p>
</li>
</ul></div>
<div class="admonitionblock">
<table><tr>
<td class="icon">
<div class="title">Note</div>
</td>
<td class="content">其中整個project到底有哪些obj file會完全依照 <strong>src/</strong> 裡面有哪些 <span class="monospaced">.cpp</span> 檔決定</td>
</tr></table>
</div>
<div class="sect4">
<h5 id="_gnumakefile">GNUMakefile</h5>
<div class="paragraph"><p>就是一個 Makefile, 不過裡面有些東西是 <span class="monospaced">GNU-make</span> only的</p></div>
</div>
<div class="sect4">
<h5 id="_gnumakefile_dependency_bash">GNUMakefile.dependency.bash</h5>
<div class="paragraph"><p>產生 dependency檔用的</p></div>
</div>
</div>
<div class="sect2">
<h3 id="_doxygen">doxygen/</h3>
<div class="paragraph"><p>doxygen 相關設定</p></div>
<div class="sect4">
<h5 id="_makefile_3">Makefile</h5>
<div class="paragraph"><p>編譯doxygen document的Makefile, 裡面只有一個target: <em>document</em>,
另外有兩個環境變數:</p></div>
<div class="ulist"><ul>
<li>
<p>
DOXYGEN_RUN_PATH: 指定doxygen執行的pwd, 預設為 <span class="monospaced">pwd</span>
</p>
</li>
<li>
<p>
DOXYGEN_CONFIG: 指定config檔放在哪裡, 預設為 <span class="monospaced">pwd</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_config">config</h5>
<div class="paragraph"><p>設置, 以下幾點個人覺得比較重要的</p></div>
<div class="listingblock">
<div class="content"></div></div>
<div class="admonitionblock">
<table><tr>
<td class="icon">
<div class="title">Note</div>
</td>
<td class="content"><em>config</em><span class="monospaced">$(config_path)</span> 是一個環境變數, 代表這個configure file所在位置
<strong>呼叫asciidoc時必須有設置這個環境變數</strong></td>
</tr></table>
</div>
</div>
<div class="sect4">
<h5 id="_header_html">header.html</h5>
<div class="paragraph"><p><strong>HTML</strong> output 的開頭
沒有更動</p></div>
</div>
<div class="sect4">
<h5 id="_footer_html">footer.html</h5>
<div class="paragraph"><p><strong>HTML</strong> output 的結尾
沒有更動</p></div>
</div>
<div class="sect4">
<h5 id="_logo_png">logo.png</h5>
<div class="paragraph"><p>就是logo</p></div>
</div>
<div class="sect4">
<h5 id="_stylesheet_css">stylesheet.css</h5>
<div class="paragraph"><p><strong>HTML</strong> output 的css樣式, 我把他改成暗色系了</p></div>
<div class="paragraph"><p>以下是更動的地方:</p></div>
<div class="listingblock">
<div class="content"></div></div>
</div>
<div class="sect4">
<h5 id="_custom_css">custom.css</h5>
<div class="paragraph"><p><strong>HTML</strong> output 的css樣式, 在這邊設定的話連 <em>navtree</em> 等都可以設定.<br>
另外這個檔案的檔名不能是 <span class="monospaced">navtree.css</span> , 不知道是不是bug.</p></div>
</div>
<div class="sect4">
<h5 id="_header_tex">header.tex</h5>
<div class="paragraph"><p><strong>LaTex</strong> output 的開頭</p></div>
</div>
<div class="sect4">
<h5 id="_header_tex_2">header.tex</h5>
<div class="paragraph"><p><strong>LaTex</strong> output 的結尾</p></div>
</div>
<div class="sect4">
<h5 id="_stylesheet_sty">stylesheet.sty</h5>
<div class="paragraph"><p><strong>LaTex</strong> 的樣式設定</p></div>
</div>
</div>
<div class="sect2">
<h3 id="_meowpp">meowpp/</h3>
<div class="paragraph"><p>meow for <strong>C++ templates</strong></p></div>
<div class="sect4">
<h5 id="_self_h">Self.h</h5>
<div class="paragraph"><p>包含一個具有 <strong>Copy On Write</strong> 技術的 <em>class</em> 而且有實作 <strong>by reference</strong> ,
基本上就是改良C\+\+原本的 reference 機制, 原本的 reference 只能在宣告的時候
指定參照指向的變數,
而這邊則可以動態改變</p></div>
</div>
<div class="sect4">
<h5 id="_usage_h">Usage.h</h5>
<div class="paragraph"><p>方便user製作還算精美的 <strong>usage document</strong> 並且利用 <span class="monospaced">getopt()</span> 實作讀入參數與分析</p></div>
</div>
<div class="sect4">
<h5 id="_utility_h">utility.h</h5>
<div class="paragraph"><p>一些不知道要歸類到哪的小functions</p></div>
</div>
<div class="sect3">
<h4 id="_colors">colors/</h4>
<div class="paragraph"><p>一些 <strong>color space</strong> 以及這些space的 <strong>transformate function</strong> 都放在這資料夾下</p></div>
<div class="admonitionblock">
<table><tr>
<td class="icon">
<div class="title">Note</div>
</td>
<td class="content">目前transformation function的準確率還很低, 有待以後加強</td>
</tr></table>
</div>
<div class="sect4">
<h5 id="_color3_space_h">Color3_Space.h</h5>
<div class="paragraph"><p><span class="monospaced">class Color3_Space&lt;T&gt;</span> <strong>Channel Number = 3</strong> 的 Color Space 的共通 <strong>Base class</strong></p></div>
</div>
<div class="sect4">
<h5 id="_rgb_space_h">RGB_Space.h</h5>
<div class="paragraph"><p>Channel分別是</p></div>
<div class="ulist"><ul>
<li>
<p>
Red
</p>
</li>
<li>
<p>
Green
</p>
</li>
<li>
<p>
Blue
</p>
</li>
</ul></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::RGBi_Space</span><em>int</em> 存資料, 每個channel數值合法範圍是 <strong>0~255</strong>
</p>
</li>
<li>
<p>
<span class="monospaced">meow::RGBf_Space</span><em>double</em> 存資料, 每個channel數值合法範圍是 <strong>0.0~1.0</strong>
</p>
</li>
</ul></div>
<div class="ulist"><div class="title">Functions</div><ul>
<li>
<p>
<span class="monospaced">meow::colorTransformation(in, *out)</span> for
</p>
<div class="ulist"><ul>
<li>
<p>
RGBi_Space &#8592;&#8594; RGBf_Space
</p>
</li>
</ul></div>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_yuv_space_h">YUV_Space.h</h5>
<div class="paragraph"><p>Channel分別是</p></div>
<div class="ulist"><ul>
<li>
<p>
Y 明度
</p>
</li>
<li>
<p>
U 色度
</p>
</li>
<li>
<p>
V 濃度
</p>
</li>
</ul></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::YUVf_Space</span><em>double</em> 存資料, 每個channel數值合法範圍是 <strong>0~1.0</strong>
</p>
</li>
</ul></div>
<div class="ulist"><div class="title">Functions</div><ul>
<li>
<p>
<span class="monospaced">meow::colorTransformation(in, *out)</span> for
</p>
<div class="ulist"><ul>
<li>
<p>
YUVf_Space &#8592;&#8594; RGBi_Space
</p>
</li>
<li>
<p>
YUVf_Space &#8592;&#8594; RGBf_Space
</p>
</li>
</ul></div>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_hsl_space_h">HSL_Space.h</h5>
<div class="paragraph"><p>Channel分別是</p></div>
<div class="ulist"><ul>
<li>
<p>
H 色調
</p>
</li>
<li>
<p>
S 飽和度
</p>
</li>
<li>
<p>
L 亮度
</p>
</li>
</ul></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::HSLf_Space</span><em>double</em> 存資料, 每個channel數值合法範圍是 <strong>0~1.0</strong>
</p>
</li>
</ul></div>
<div class="ulist"><div class="title">Functions</div><ul>
<li>
<p>
<span class="monospaced">meow::colorTransformation(in, *out)</span> for
</p>
<div class="ulist"><ul>
<li>
<p>
HSLf_Space &#8592;&#8594; RGBi_Space
</p>
</li>
<li>
<p>
HSLf_Space &#8592;&#8594; RGBf_Space
</p>
</li>
<li>
<p>
HSLf_Space &#8592;&#8594; YUVf_Space
</p>
</li>
</ul></div>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_hsv_space_h">HSV_Space.h</h5>
<div class="paragraph"><p>Channel分別是</p></div>
<div class="ulist"><ul>
<li>
<p>
H 色調
</p>
</li>
<li>
<p>
S 飽和度
</p>
</li>
<li>
<p>
V 亮度
</p>
</li>
</ul></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::HSVf_Space</span><em>double</em> 存資料, 每個channel數值合法範圍是 <strong>0~1.0</strong>
</p>
</li>
</ul></div>
<div class="ulist"><div class="title">Functions</div><ul>
<li>
<p>
<span class="monospaced">meow::colorTransformation(in, *out)</span> for
</p>
<div class="ulist"><ul>
<li>
<p>
HSVf_Space &#8592;&#8594; RGBi_Space
</p>
</li>
<li>
<p>
HSVf_Space &#8592;&#8594; RGBf_Space
</p>
</li>
<li>
<p>
HSVf_Space &#8592;&#8594; YUVf_Space
</p>
</li>
<li>
<p>
HSVf_Space &#8592;&#8594; HSLf_Space
</p>
</li>
</ul></div>
</li>
</ul></div>
</div>
</div>
<div class="sect3">
<h4 id="_dsa">dsa/</h4>
<div class="paragraph"><p>包含一些資料結構</p></div>
<div class="sect4">
<h5 id="_binaryindextree_h">BinaryIndexTree.h</h5>
<div class="paragraph"><p>極度簡化的 <strong>SegmentTree</strong> 已無區間更新的操作.</p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::BinaryIndexTree&lt;Value&gt;</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_disjointset_h">DisjointSet.h</h5>
<div class="paragraph"><p>用來維護一堆互斥集的資訊.</p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::DisjointSet</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_hashtable_h">HashTable.h</h5>
<div class="paragraph"><p>就是傳說中的HashTable</p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::HashTableList&lt;Data, HashFunc&gt;</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_kd_tree_h">KD_Tree.h</h5>
<div class="paragraph"><p>查詢第k近鄰居用的</p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::KD_Tree&lt;Vector&gt;</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_mergeableheap_h">MergeableHeap.h</h5>
<div class="paragraph"><p>可合併Heap</p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::MergeableHeap&lt;Element&gt;</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_segmenttree_h">SegmentTree.h</h5>
<div class="paragraph"><p>線段樹
.Classes
* <span class="monospaced">meow::SegmentTree&lt;Value&gt;</span></p></div>
</div>
<div class="sect4">
<h5 id="_splaytree_h">SplayTree.h</h5>
<div class="paragraph"><p>伸展樹, 比一般平衡樹稍強的東東
* <span class="monospaced">meow::SplayTree&lt;Key, Value&gt;</span>
* <span class="monospaced">meow::SplayTree_Range&lt;Key, Value&gt;</span></p></div>
</div>
<div class="sect4">
<h5 id="_vp_tree_h">VP_Tree.h</h5>
<div class="paragraph"><p>查詢第k近鄰居用的</p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::VP_Tree&lt;Vector&gt;</span>
</p>
</li>
</ul></div>
</div>
</div>
<div class="sect3">
<h4 id="_geo">geo/</h4>
<div class="paragraph"><p>計算幾何相關, 算是從math中特化出來的</p></div>
<div class="sect4">
<h5 id="_vectors_h">Vectors.h</h5>
<div class="paragraph"><p>實作上不是用陣列, 是直接宣告23個變數分別存x, y (,z)</p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::Vector2D&lt;Scalar&gt;</span>
</p>
</li>
<li>
<p>
<span class="monospaced">meow::Vector3D&lt;Scalar&gt;</span>
</p>
</li>
</ul></div>
</div>
</div>
<div class="sect3">
<h4 id="_math">math/</h4>
<div class="sect4">
<h5 id="_utility_h_2">utility.h</h5>
<div class="paragraph"><p>數學相關的小 function 雜七雜八的不知道歸類何處</p></div>
<div class="ulist"><div class="title">Functions</div><ul>
<li>
<p>
noEPS()
</p>
</li>
<li>
<p>
normalize()
</p>
</li>
<li>
<p>
denormalize()
</p>
</li>
<li>
<p>
ratioMapping()
</p>
</li>
<li>
<p>
inRange()
</p>
</li>
<li>
<p>
squ()
</p>
</li>
<li>
<p>
cub()
</p>
</li>
<li>
<p>
average()
</p>
</li>
<li>
<p>
average()
</p>
</li>
<li>
<p>
tAbs()
</p>
</li>
</ul></div>
<div class="ulist"><div class="title">Constants</div><ul>
<li>
<p>
PI
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_matrix_h">Matrix.h</h5>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::Matrix&lt;Entry&gt;</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_vector_h">Vector.h</h5>
<div class="paragraph"><p>實作上將 <strong>Matrix</strong> 重新包裝</p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::Vector&lt;Scalar&gt;</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_transformation_h">Transformation.h</h5>
<div class="paragraph"><p>各種轉換的 Base Class, 這裡所謂的 <strong>Transformation</strong> 形式上不一定要是 Linear,
但原則上都是 <strong>input a vector, output a vector</strong> 其中input/output的dimension可以
不同.</p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::Transformation&lt;Scalar&gt;</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_transformations_h">Transformations.h</h5>
<div class="paragraph"><p>包含各種 <strong>Non-Linear</strong> transformation</p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::BallProjection&lt;Scalar&gt;</span>
</p>
</li>
<li>
<p>
<span class="monospaced">meow::PhotoProjection&lt;Scalar&gt;</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_lineartransformation_h">LinearTransformation.h</h5>
<div class="paragraph"><p>各種 LinearTransformation 的Base Class, 繼承自 <span class="monospaced">meow::Transformation</span></p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::LinearTransformation&lt;Scalar&gt;</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_lineartransformations_h">LinearTransformations.h</h5>
<div class="paragraph"><p>各種 <strong>Linear</strong> Transformation</p></div>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::Rotation3D&lt;Scalar&gt;</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_methods_h">methods.h</h5>
<div class="paragraph"><p>一些數學方法</p></div>
<div class="ulist"><div class="title">Functions</div><ul>
<li>
<p>
ransac()
</p>
</li>
<li>
<p>
levenbergMarquardt()
</p>
</li>
</ul></div>
</div>
</div>
<div class="sect3">
<h4 id="_oo">oo/</h4>
<div class="paragraph"><p>物件相關</p></div>
<div class="sect4">
<h5 id="_objbase_h">ObjBase.h</h5>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::ObjBase</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_objtypes_h">ObjTypes.h</h5>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::ObjType</span>
</p>
</li>
<li>
<p>
<span class="monospaced">meow::ObjInt</span>
</p>
</li>
<li>
<p>
<span class="monospaced">meow::ObjSizeT</span>
</p>
</li>
<li>
<p>
<span class="monospaced">meow::ObjDouble</span>
</p>
</li>
<li>
<p>
<span class="monospaced">meow::ObjString</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_objarray_h">ObjArray.h</h5>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::ObjArray</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_objdictionary_h">ObjDictionary.h</h5>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::ObjDictionary</span>
</p>
</li>
</ul></div>
</div>
<div class="sect4">
<h5 id="_objselector_h">ObjSelector.h</h5>
<div class="ulist"><div class="title">Classes</div><ul>
<li>
<p>
<span class="monospaced">meow::ObjSelector&lt;SID&gt;</span>
</p>
</li>
</ul></div>
</div>
</div>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_test">Test</h2>
<div class="sectionbody">
<div class="sect2">
<h3 id="_acm_相關題目">ACM 相關題目</h3>
<table class="tableblock frame-all grid-rows"
style="
width:70%;
">
<col style="width:21%;">
<col style="width:21%;">
<col style="width:28%;">
<col style="width:7%;">
<col style="width:7%;">
<col style="width:14%;">
<thead>
<tr>
<th class="tableblock halign-left valign-top" > Name          </th>
<th class="tableblock halign-left valign-top" > Problem               </th>
<th class="tableblock halign-center valign-top" > Link  </th>
<th class="tableblock halign-center valign-top" > Status </th>
<th class="tableblock halign-left valign-top" > Time </th>
<th class="tableblock halign-center valign-top" > source</th>
</tr>
</thead>
<tbody>
<tr>
<td class="tableblock halign-left valign-top" ><p class="tableblock"><strong>KD_Tree</strong></p></td>
<td class="tableblock halign-left valign-top" ><p class="tableblock"><em>Retrenchment</em></p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock"><a href="http://acm.csie.org/ntujudge/problem.php?id=1971">NTU-OJ</a>
<a href="https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&amp;Itemid=8&amp;page=show_problem&amp;problem=4052">ACM-ICPC Live</a></p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock">Accept</p></td>
<td class="tableblock halign-left valign-top" ><p class="tableblock">0.083/0.083</p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock monospaced"><a href="http://codepad.org/U85ruse5">codepad</a></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top" ><p class="tableblock"><strong>VP_Tree</strong></p></td>
<td class="tableblock halign-left valign-top" ><p class="tableblock"><em>Retrenchment</em></p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock"><a href="http://acm.csie.org/ntujudge/problem.php?id=1971">NTU-OJ</a>
<a href="https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&amp;Itemid=8&amp;page=show_problem&amp;problem=4052">ACM-ICPC Live</a></p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock">Accept</p></td>
<td class="tableblock halign-left valign-top" ><p class="tableblock">0.516/0.516</p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock monospaced"><a href="http://codepad.org/03dW6ZHV">codepad</a></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top" ><p class="tableblock"><strong>SplayTree + SegmentTree</strong></p></td>
<td class="tableblock halign-left valign-top" ><p class="tableblock"><em>Shuffling_cards</em></p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock"><a href="http://acm.csie.org/ntujudge/problem.php?id=1353">NTU-OJ</a>
<a href="http://www.spoj.com/problems/SHUFFLEK/">SPOJ</a></p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock">Accept/TLE</p></td>
<td class="tableblock halign-left valign-top" ><p class="tableblock">6.910/---</p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock monospaced"><a href="http://codepad.org/yUeiVZc0">codepad</a></p></td>
</tr>
<tr>
<td class="tableblock halign-left valign-top" ><p class="tableblock"><strong>SplayTree + BinaryIndexTree</strong></p></td>
<td class="tableblock halign-left valign-top" ><p class="tableblock"><em>Shuffling_cards</em></p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock"><a href="http://acm.csie.org/ntujudge/problem.php?id=1353">NTU-OJ</a>
<a href="http://www.spoj.com/problems/SHUFFLEK/">SPOJ</a></p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock">Accept/Accept</p></td>
<td class="tableblock halign-left valign-top" ><p class="tableblock">5.480/44.35</p></td>
<td class="tableblock halign-center valign-top" ><p class="tableblock monospaced"><a href="http://codepad.org/GAWjEtmq">codepad</a></p></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div class="sect1">
<h2 id="_bug_report_contact">Bug Report / Contact</h2>
<div class="sectionbody">
<div class="ulist"><ul>
<li>
<p>
E-Mail: cat.hook31894 ~在~ gmail.com
</p>
</li>
<li>
<p>
GitHub
</p>
</li>
</ul></div>
</div>
</div>
</div>
<div id="footnotes"><hr></div>
<div id="footer">
<div id="footer-text">
Last updated 2014-06-24 03:53:30 CST
</div>
</div>
</body>
</html>