• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            pku1244 Slots of Fun 簡單幾何

            題目:

            給出個n行的三角,每個圓里包含一個字母,問哪些字母能夠組成等邊三角形(每個字母至多出現(xiàn)3次)

            解法:
            我用了個很懶的方法,算每個圓中心點的坐標(biāo),然后看三點距離是否相等。關(guān)于求坐標(biāo)其實還是很簡單的- -用向量的方法。
            第一行第一個坐標(biāo)設(shè)為(0,0),設(shè)置元向量(-0.5,-0.5*sqrt(3)),然后每一行第一個元素坐標(biāo)就是上行第一個元素坐標(biāo)+元向量,每一行第i個元素坐標(biāo)為第i-1個坐標(biāo)+單位向量。

            代碼:
             1 //============================================================================
             2 // Name        : pku1244.cpp
             3 // Author      : yzhw
             4 // Version     :
             5 // Copyright   : yzhw
             6 // Description : Hello World in C++, Ansi-style
             7 //============================================================================
             8 
             9 #include <iostream>
            10 #include <cstdio>
            11 #include <cstring>
            12 #include <cmath>
            13 #include <algorithm>
            14 #include <functional>
            15 #include <vector>
            16 using namespace std;
            17 double x=-0.5,y=x*sqrt(3.0);
            18 int n;
            19 inline double dis(pair<double,double> a,pair<double,double> b)
            20 {
            21     return (a.first-b.first)*(a.first-b.first)+(a.second-b.second)*(a.second-b.second);
            22 }
            23 inline double equ(double a,double b)
            24 {
            25     return fabs(a-b)<1e-6;
            26 }
            27 int main() {
            28     double data[20][20][2];
            29     while(scanf("%d",&n)&&n)
            30     {
            31         char str[255];
            32         vector<pair<double,double> > map[26];
            33         scanf("%s",str);
            34         char *p=str;
            35         data[0][0][0]=0;
            36         data[0][0][1]=0;
            37         map[*(p++)-97].push_back(make_pair<double,double>(data[0][0][0],data[0][0][1]));
            38         for(int i=1;i<n;i++)
            39         {
            40             data[i][0][0]=data[i-1][0][0]+x;
            41             data[i][0][1]=data[i-1][0][1]+y;
            42             map[*(p++)-97].push_back(make_pair<double,double>(data[i][0][0],data[i][0][1]));
            43             for(int j=1;j<=i;j++)
            44             {
            45                 data[i][j][0]=data[i][j-1][0]+1;
            46                 data[i][j][1]=data[i][j-1][1];
            47                 map[*(p++)-97].push_back(make_pair<double,double>(data[i][j][0],data[i][j][1]));
            48             }
            49         }
            50         bool flag=false;
            51         for(int i=0;i<26;i++)
            52             if(map[i].size()==3)
            53             {
            54                 if(equ(dis(map[i][0],map[i][1]),dis(map[i][0],map[i][2]))&&equ(dis(map[i][0],map[i][1]),dis(map[i][1],map[i][2])))
            55                         {
            56                             printf("%c",i+97);
            57                             flag=true;
            58                         }
            59             }
            60         if(flag) printf("\n");
            61         else printf("LOOOOOOOOSER!\n");
            62     }
            63     return 0;
            64 
            65 }
            66 

            posted on 2011-01-20 02:57 yzhw 閱讀(133) 評論(0)  編輯 收藏 引用 所屬分類: geometry&phycise

            <2011年1月>
            2627282930311
            2345678
            9101112131415
            16171819202122
            23242526272829
            303112345

            導(dǎo)航

            統(tǒng)計

            公告

            統(tǒng)計系統(tǒng)

            留言簿(1)

            隨筆分類(227)

            文章分類(2)

            OJ

            最新隨筆

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            久久97精品久久久久久久不卡| 热99RE久久精品这里都是精品免费 | 精品久久国产一区二区三区香蕉| 综合久久一区二区三区| 国产成人无码精品久久久免费| 久久久久人妻精品一区二区三区| 久久久久亚洲AV无码专区首JN| 久久综合五月丁香久久激情| 久久精品国产福利国产琪琪| 久久99亚洲综合精品首页| 国产亚洲成人久久| 麻豆久久| 亚洲午夜无码久久久久| 无码国内精品久久人妻| 久久精品人成免费| 国产精品久久久福利| 中文字幕一区二区三区久久网站| 狠狠色伊人久久精品综合网 | 久久国产综合精品五月天| 久久播电影网| 亚洲人成网站999久久久综合| 久久人人爽人人爽人人av东京热| 亚洲AV日韩AV天堂久久| 久久中文字幕一区二区| 久久精品国产精品亚洲人人| 伊人久久成人成综合网222| 无码超乳爆乳中文字幕久久 | 日本欧美国产精品第一页久久| 日韩久久无码免费毛片软件| 中文精品久久久久人妻不卡| 国产2021久久精品| 久久婷婷五月综合国产尤物app| av无码久久久久久不卡网站| 久久人人爽人人爽人人片AV东京热| 中文无码久久精品| 久久精品18| 国内精品久久人妻互换| 亚洲国产精品综合久久网络| 久久久久亚洲AV无码专区首JN | 久久亚洲AV成人出白浆无码国产| 曰曰摸天天摸人人看久久久|