• <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次)

            解法:
            我用了個很懶的方法,算每個圓中心點(diǎn)的坐標(biāo),然后看三點(diǎn)距離是否相等。關(guān)于求坐標(biāo)其實(shí)還是很簡單的- -用向量的方法。
            第一行第一個坐標(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

            最新隨筆

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            国产精品美女久久久久久2018| 精品久久久久久无码专区 | 久久精品国产亚洲AV嫖农村妇女| 久久精品国产亚洲综合色| 天堂无码久久综合东京热| 无码人妻久久一区二区三区免费| 久久精品亚洲精品国产欧美| 99re久久精品国产首页2020| 久久国产精品二国产精品| 久久综合九色综合97_久久久 | 日韩人妻无码精品久久免费一| 国产一级持黄大片99久久| 久久www免费人成精品香蕉| 中文字幕热久久久久久久| 国产精品99久久久精品无码| 欧美精品丝袜久久久中文字幕| 久久―日本道色综合久久| 深夜久久AAAAA级毛片免费看| 午夜不卡久久精品无码免费| 久久成人精品| 国产一级做a爰片久久毛片| 男女久久久国产一区二区三区| 久久www免费人成精品香蕉| 精品久久久久久国产| 日本久久久久亚洲中字幕| 久久精品国产男包| 久久久久久久久久久久久久| 伊人久久综合精品无码AV专区| 91麻豆精品国产91久久久久久| 久久精品综合一区二区三区| 国产精品视频久久久| 欧美丰满熟妇BBB久久久| 香蕉久久av一区二区三区| 天堂无码久久综合东京热| 久久夜色精品国产www| 久久久亚洲精品蜜桃臀| 欧美国产成人久久精品| 久久综合九色综合精品| 国产综合免费精品久久久| 狠狠色综合网站久久久久久久 | 日韩欧美亚洲综合久久|