﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-ArcTan-文章分类-ACM-计算几何</title><link>http://www.cppblog.com/ArcTan/category/19279.html</link><description>dfs</description><language>zh-cn</language><lastBuildDate>Sun, 22 Jul 2012 17:29:49 GMT</lastBuildDate><pubDate>Sun, 22 Jul 2012 17:29:49 GMT</pubDate><ttl>60</ttl><item><title>hdu 3320 openGL(空间变换+矩阵变换)</title><link>http://www.cppblog.com/ArcTan/articles/183542.html</link><dc:creator>wangs</dc:creator><author>wangs</author><pubDate>Sun, 15 Jul 2012 05:09:00 GMT</pubDate><guid>http://www.cppblog.com/ArcTan/articles/183542.html</guid><wfw:comment>http://www.cppblog.com/ArcTan/comments/183542.html</wfw:comment><comments>http://www.cppblog.com/ArcTan/articles/183542.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/ArcTan/comments/commentRss/183542.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/ArcTan/services/trackbacks/183542.html</trackback:ping><description><![CDATA[<a href="http://acm.hdu.edu.cn/showproblem.php?pid=3320">http://acm.hdu.edu.cn/showproblem.php?pid=3320</a><br /><br />题意：<br />&nbsp;&nbsp; &nbsp;&nbsp; 给定(x,y,z) 然后3个变换。求最后的结果。<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 初始的(x,y,z)最后给出，变换的顺序由后往前。<br /><br />我采取的是从后往前做的。还可以使用矩阵运算，从前往后，右乘哦。&nbsp;&nbsp; &nbsp;&nbsp; 参考：http://fayaa.com/code/view/9510/<br /><br />还有就是数据的读入 sscanf()是个好东西呀，哈哈。<br /><br />总结：<br />&nbsp;&nbsp; &nbsp;&nbsp; 数学很重要啊！<br /><br /><div><img src="data:image/png;base64,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" alt="" /></div><br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000; ">#include</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">stdio.h</span><span style="color: #000000; ">&gt;</span><span style="color: #000000; "><br />#include</span><span style="color: #000000; ">&lt;</span><span style="color: #0000FF; ">string</span><span style="color: #000000; ">.h</span><span style="color: #000000; ">&gt;</span><span style="color: #000000; "><br />#include</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">math.h</span><span style="color: #000000; ">&gt;</span><span style="color: #000000; "><br /></span><span style="color: #0000FF; ">struct</span><span style="color: #000000; ">&nbsp;tra{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">&nbsp;cm;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">double</span><span style="color: #000000; ">&nbsp;w;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">double</span><span style="color: #000000; ">&nbsp;x,y,z;<br />}&nbsp;p[</span><span style="color: #000000; ">104</span><span style="color: #000000; ">];<br /></span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">&nbsp;ch[</span><span style="color: #000000; ">125</span><span style="color: #000000; ">];<br /></span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;main()<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;t;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;n;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;i,j,k;<br />&nbsp;&nbsp;&nbsp;&nbsp;scanf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">%d</span><span style="color: #000000; ">"</span><span style="color: #000000; ">,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">t);<br />&nbsp;&nbsp;&nbsp;&nbsp;getchar();<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">while</span><span style="color: #000000; ">&nbsp;(t</span><span style="color: #000000; ">--</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;gets(ch);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;n</span><span style="color: #000000; ">=</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">while</span><span style="color: #000000; ">&nbsp;(gets(ch)</span><span style="color: #000000; ">&amp;&amp;</span><span style="color: #000000; ">ch[</span><span style="color: #000000; ">2</span><span style="color: #000000; ">]</span><span style="color: #000000; ">!=</span><span style="color: #000000; ">'</span><span style="color: #000000; ">E</span><span style="color: #000000; ">'</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;n</span><span style="color: #000000; ">++</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">&nbsp;s[</span><span style="color: #000000; ">125</span><span style="color: #000000; ">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;memset(s,</span><span style="color: #000000; ">0</span><span style="color: #000000; ">,</span><span style="color: #0000FF; ">sizeof</span><span style="color: #000000; ">(s));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">&nbsp;(ch[</span><span style="color: #000000; ">2</span><span style="color: #000000; ">]</span><span style="color: #000000; ">==</span><span style="color: #000000; ">'</span><span style="color: #000000; ">R</span><span style="color: #000000; ">'</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p[n].cm</span><span style="color: #000000; ">=</span><span style="color: #000000; ">ch[</span><span style="color: #000000; ">2</span><span style="color: #000000; ">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i</span><span style="color: #000000; ">=</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">while</span><span style="color: #000000; ">&nbsp;(ch[i]</span><span style="color: #000000; ">!=</span><span style="color: #000000; ">'</span><span style="color: #000000; ">(</span><span style="color: #000000; ">'</span><span style="color: #000000; ">)&nbsp;&nbsp;i</span><span style="color: #000000; ">++</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k</span><span style="color: #000000; ">=</span><span style="color: #000000; ">i</span><span style="color: #000000; ">+</span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">while</span><span style="color: #000000; ">&nbsp;(ch[i]</span><span style="color: #000000; ">!=</span><span style="color: #000000; ">'</span><span style="color: #000000; ">)</span><span style="color: #000000; ">'</span><span style="color: #000000; ">)&nbsp;&nbsp;i</span><span style="color: #000000; ">++</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j</span><span style="color: #000000; ">=</span><span style="color: #000000; ">i</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">for</span><span style="color: #000000; ">&nbsp;(i</span><span style="color: #000000; ">=</span><span style="color: #000000; ">k;i</span><span style="color: #000000; ">&lt;=</span><span style="color: #000000; ">j;i</span><span style="color: #000000; ">++</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s[i</span><span style="color: #000000; ">-</span><span style="color: #000000; ">k]</span><span style="color: #000000; ">=</span><span style="color: #000000; ">ch[i];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;puts(s);</span><span style="color: #008000; "><br /></span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sscanf(s,</span><span style="color: #000000; ">"</span><span style="color: #000000; ">%lf,%lf,%lf,%lf</span><span style="color: #000000; ">"</span><span style="color: #000000; ">,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">p[n].w,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">p[n].x,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">p[n].y,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">p[n].z);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i</span><span style="color: #000000; ">=</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">while</span><span style="color: #000000; ">&nbsp;(ch[i]</span><span style="color: #000000; ">!=</span><span style="color: #000000; ">'</span><span style="color: #000000; ">(</span><span style="color: #000000; ">'</span><span style="color: #000000; ">)&nbsp;&nbsp;i</span><span style="color: #000000; ">++</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;k</span><span style="color: #000000; ">=</span><span style="color: #000000; ">i</span><span style="color: #000000; ">+</span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">while</span><span style="color: #000000; ">&nbsp;(ch[i]</span><span style="color: #000000; ">!=</span><span style="color: #000000; ">'</span><span style="color: #000000; ">)</span><span style="color: #000000; ">'</span><span style="color: #000000; ">)&nbsp;&nbsp;i</span><span style="color: #000000; ">++</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j</span><span style="color: #000000; ">=</span><span style="color: #000000; ">i</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">for</span><span style="color: #000000; ">&nbsp;(i</span><span style="color: #000000; ">=</span><span style="color: #000000; ">k;i</span><span style="color: #000000; ">&lt;=</span><span style="color: #000000; ">j;i</span><span style="color: #000000; ">++</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;s[i</span><span style="color: #000000; ">-</span><span style="color: #000000; ">k]</span><span style="color: #000000; ">=</span><span style="color: #000000; ">ch[i];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;puts(s);</span><span style="color: #008000; "><br /></span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;p[n].cm</span><span style="color: #000000; ">=</span><span style="color: #000000; ">ch[</span><span style="color: #000000; ">2</span><span style="color: #000000; ">];<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sscanf(s,</span><span style="color: #000000; ">"</span><span style="color: #000000; ">%lf,%lf,%lf</span><span style="color: #000000; ">"</span><span style="color: #000000; ">,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">p[n].x,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">p[n].y,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">p[n].z);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;</span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;(i=n;i&gt;=1;i--)<br />&nbsp;&nbsp;&nbsp;</span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf("%c&nbsp;%lf&nbsp;%lf&nbsp;%lf&nbsp;%lf\n",p[i].cm,p[i].w,p[i].x,p[i].y,p[i].z);</span><span style="color: #008000; "><br /></span><span style="color: #000000; "><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">double</span><span style="color: #000000; ">&nbsp;x,y,z;<br />&nbsp;</span><span style="color: #008000; ">//</span><span style="color: #008000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x=p[n].z,y=p[n].y,z=p[n].z;</span><span style="color: #008000; "><br /></span><span style="color: #000000; ">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">for</span><span style="color: #000000; ">&nbsp;(i</span><span style="color: #000000; ">=</span><span style="color: #000000; ">n;i</span><span style="color: #000000; ">&gt;=</span><span style="color: #000000; ">1</span><span style="color: #000000; ">;i</span><span style="color: #000000; ">--</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">char</span><span style="color: #000000; ">&nbsp;c</span><span style="color: #000000; ">=</span><span style="color: #000000; ">p[i].cm;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">&nbsp;(c</span><span style="color: #000000; ">==</span><span style="color: #000000; ">'</span><span style="color: #000000; ">V</span><span style="color: #000000; ">'</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x</span><span style="color: #000000; ">=</span><span style="color: #000000; ">p[i].x,y</span><span style="color: #000000; ">=</span><span style="color: #000000; ">p[i].y,z</span><span style="color: #000000; ">=</span><span style="color: #000000; ">p[i].z;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">&nbsp;(c</span><span style="color: #000000; ">==</span><span style="color: #000000; ">'</span><span style="color: #000000; ">S</span><span style="color: #000000; ">'</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x&nbsp;</span><span style="color: #000000; ">*=</span><span style="color: #000000; ">p[i].x,y&nbsp;</span><span style="color: #000000; ">*=</span><span style="color: #000000; ">p[i].y,z&nbsp;</span><span style="color: #000000; ">*=</span><span style="color: #000000; ">p[i].z;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">&nbsp;(c</span><span style="color: #000000; ">==</span><span style="color: #000000; ">'</span><span style="color: #000000; ">T</span><span style="color: #000000; ">'</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x&nbsp;</span><span style="color: #000000; ">+=</span><span style="color: #000000; ">p[i].x,y&nbsp;</span><span style="color: #000000; ">+=</span><span style="color: #000000; ">p[i].y,z&nbsp;</span><span style="color: #000000; ">+=</span><span style="color: #000000; ">p[i].z;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "><br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">double</span><span style="color: #000000; ">&nbsp;si</span><span style="color: #000000; ">=</span><span style="color: #000000; ">sin(p[i].w),co</span><span style="color: #000000; ">=</span><span style="color: #000000; ">cos(p[i].w);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">double</span><span style="color: #000000; ">&nbsp;m</span><span style="color: #000000; ">=</span><span style="color: #000000; ">sqrt(p[i].x</span><span style="color: #000000; ">*</span><span style="color: #000000; ">p[i].x</span><span style="color: #000000; ">+</span><span style="color: #000000; ">p[i].y</span><span style="color: #000000; ">*</span><span style="color: #000000; ">p[i].y</span><span style="color: #000000; ">+</span><span style="color: #000000; ">p[i].z</span><span style="color: #000000; ">*</span><span style="color: #000000; ">p[i].z);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">double</span><span style="color: #000000; ">&nbsp;x1,y1,z1;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">double</span><span style="color: #000000; ">&nbsp;x2,y2,z2;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x1</span><span style="color: #000000; ">=</span><span style="color: #000000; ">p[i].x</span><span style="color: #000000; ">/</span><span style="color: #000000; ">m;y1</span><span style="color: #000000; ">=</span><span style="color: #000000; ">p[i].y</span><span style="color: #000000; ">/</span><span style="color: #000000; ">m;z1</span><span style="color: #000000; ">=</span><span style="color: #000000; ">p[i].z</span><span style="color: #000000; ">/</span><span style="color: #000000; ">m;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x2</span><span style="color: #000000; ">=</span><span style="color: #000000; ">(x1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;x1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;(</span><span style="color: #000000; ">1</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;co)&nbsp;</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;co)</span><span style="color: #000000; ">*</span><span style="color: #000000; ">x</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;(x1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;y1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;(</span><span style="color: #000000; ">1</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;co)&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;z1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;si)</span><span style="color: #000000; ">*</span><span style="color: #000000; ">y</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;(x1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;z1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;(</span><span style="color: #000000; ">1</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;co)&nbsp;</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;y1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;si)</span><span style="color: #000000; ">*</span><span style="color: #000000; ">z;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y2</span><span style="color: #000000; ">=</span><span style="color: #000000; ">(y1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;x1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;(</span><span style="color: #000000; ">1</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;co)&nbsp;</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;z1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;si)</span><span style="color: #000000; ">*</span><span style="color: #000000; ">x</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;(y1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;y1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;(</span><span style="color: #000000; ">1</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;co)&nbsp;</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;co)</span><span style="color: #000000; ">*</span><span style="color: #000000; ">y</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;(y1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;z1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;(</span><span style="color: #000000; ">1</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;co)&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;x1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;si)</span><span style="color: #000000; ">*</span><span style="color: #000000; ">z;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;z2</span><span style="color: #000000; ">=</span><span style="color: #000000; ">(x1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;z1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;(</span><span style="color: #000000; ">1</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;co)&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;y1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;si)</span><span style="color: #000000; ">*</span><span style="color: #000000; ">x</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;(y1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;z1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;(</span><span style="color: #000000; ">1</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;co)&nbsp;</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;x1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;si)</span><span style="color: #000000; ">*</span><span style="color: #000000; ">y</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;(z1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;z1&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;(</span><span style="color: #000000; ">1</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">-</span><span style="color: #000000; ">&nbsp;co)&nbsp;</span><span style="color: #000000; ">+</span><span style="color: #000000; ">&nbsp;co)</span><span style="color: #000000; ">*</span><span style="color: #000000; ">z;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x</span><span style="color: #000000; ">=</span><span style="color: #000000; ">x2;y</span><span style="color: #000000; ">=</span><span style="color: #000000; ">y2;z</span><span style="color: #000000; ">=</span><span style="color: #000000; ">z2;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">%.1lf&nbsp;%.1lf&nbsp;%.1lf\n</span><span style="color: #000000; ">"</span><span style="color: #000000; ">,x,y,z);<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">return</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000; ">;<br />}<br /></span></div><br /><br /><br />&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<img src ="http://www.cppblog.com/ArcTan/aggbug/183542.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/ArcTan/" target="_blank">wangs</a> 2012-07-15 13:09 <a href="http://www.cppblog.com/ArcTan/articles/183542.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ural 1020-凸包问题</title><link>http://www.cppblog.com/ArcTan/articles/173917.html</link><dc:creator>wangs</dc:creator><author>wangs</author><pubDate>Mon, 07 May 2012 09:32:00 GMT</pubDate><guid>http://www.cppblog.com/ArcTan/articles/173917.html</guid><wfw:comment>http://www.cppblog.com/ArcTan/comments/173917.html</wfw:comment><comments>http://www.cppblog.com/ArcTan/articles/173917.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/ArcTan/comments/commentRss/173917.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/ArcTan/services/trackbacks/173917.html</trackback:ping><description><![CDATA[<div>acm.timus.ru/problem.aspx?space=1&amp;num=1020</div><br />题意是给定一个凸多边形，每个顶点有钉子。每个钉子都有半径r。问围绕该凸形的线段的长度。<br /><br />伤心一晚都没有读清楚题意啊！！！还以为要先求出凸包呢。。。。。。。。<br />哎，读题是个伤心事。<br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000; ">#include</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">stdio.h</span><span style="color: #000000; ">&gt;</span><span style="color: #000000; "><br />#include</span><span style="color: #000000; ">&lt;</span><span style="color: #0000FF; ">string</span><span style="color: #000000; ">.h</span><span style="color: #000000; ">&gt;</span><span style="color: #000000; "><br />#include</span><span style="color: #000000; ">&lt;</span><span style="color: #000000; ">math.h</span><span style="color: #000000; ">&gt;</span><span style="color: #000000; "><br /></span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;main()<br />{<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">int</span><span style="color: #000000; ">&nbsp;n,i;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">double</span><span style="color: #000000; ">&nbsp;r,x,y,x0,y0,px,py,sum;<br />&nbsp;&nbsp;&nbsp;&nbsp;scanf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">%d%lf</span><span style="color: #000000; ">"</span><span style="color: #000000; ">,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">n,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">r);<br />&nbsp;&nbsp;&nbsp;&nbsp;sum</span><span style="color: #000000; ">=</span><span style="color: #000000; ">0.0</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;scanf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">%lf%lf</span><span style="color: #000000; ">"</span><span style="color: #000000; ">,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">x0,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">y0);<br />&nbsp;&nbsp;&nbsp;&nbsp;px</span><span style="color: #000000; ">=</span><span style="color: #000000; ">x0;py</span><span style="color: #000000; ">=</span><span style="color: #000000; ">y0;n</span><span style="color: #000000; ">--</span><span style="color: #000000; ">;<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">while</span><span style="color: #000000; ">&nbsp;(n</span><span style="color: #000000; ">--</span><span style="color: #000000; ">)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;scanf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">%lf%lf</span><span style="color: #000000; ">"</span><span style="color: #000000; ">,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">x,</span><span style="color: #000000; ">&amp;</span><span style="color: #000000; ">y);<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;sum</span><span style="color: #000000; ">+=</span><span style="color: #000000; ">sqrt(pow(x</span><span style="color: #000000; ">-</span><span style="color: #000000; ">px,</span><span style="color: #000000; ">2</span><span style="color: #000000; ">)</span><span style="color: #000000; ">+</span><span style="color: #000000; ">pow(y</span><span style="color: #000000; ">-</span><span style="color: #000000; ">py,</span><span style="color: #000000; ">2</span><span style="color: #000000; ">));<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;px</span><span style="color: #000000; ">=</span><span style="color: #000000; ">x;py</span><span style="color: #000000; ">=</span><span style="color: #000000; ">y;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />&nbsp;&nbsp;&nbsp;&nbsp;sum</span><span style="color: #000000; ">+=</span><span style="color: #000000; ">sqrt(pow(px</span><span style="color: #000000; ">-</span><span style="color: #000000; ">x0,</span><span style="color: #000000; ">2</span><span style="color: #000000; ">)</span><span style="color: #000000; ">+</span><span style="color: #000000; ">pow(py</span><span style="color: #000000; ">-</span><span style="color: #000000; ">y0,</span><span style="color: #000000; ">2</span><span style="color: #000000; ">));<br />&nbsp;&nbsp;&nbsp;&nbsp;sum</span><span style="color: #000000; ">+=</span><span style="color: #000000; ">acos(</span><span style="color: #000000; ">-</span><span style="color: #000000; ">1.0</span><span style="color: #000000; ">)&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">2</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">*</span><span style="color: #000000; ">&nbsp;r;<br />&nbsp;&nbsp;&nbsp;&nbsp;printf(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">%.2lf</span><span style="color: #000000; ">"</span><span style="color: #000000; ">,sum);<br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000FF; ">return</span><span style="color: #000000; ">&nbsp;</span><span style="color: #000000; ">0</span><span style="color: #000000;">;<br />}<br /></span></div><img src ="http://www.cppblog.com/ArcTan/aggbug/173917.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/ArcTan/" target="_blank">wangs</a> 2012-05-07 17:32 <a href="http://www.cppblog.com/ArcTan/articles/173917.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>