• <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>
            隨筆 - 87  文章 - 279  trackbacks - 0
            <2025年5月>
            27282930123
            45678910
            11121314151617
            18192021222324
            25262728293031
            1234567

            潛心看書研究!

            常用鏈接

            留言簿(19)

            隨筆分類(81)

            文章分類(89)

            相冊

            ACM OJ

            My friends

            搜索

            •  

            積分與排名

            • 積分 - 216695
            • 排名 - 117

            最新評論

            閱讀排行榜

            評論排行榜

            Easy Problem

            Time limit:1000 ms   Memory limit:65536 KB
            Total Submit:1755 (462 users)   Accepted Submit:366 (332 users)

            Description

            In this problem, you're to calculate the distance between a point P(xp, yp, zp) and a segment (x1, y1, z1) − (x2, y2, z2), in a 3D space, i.e. the minimal distance from P to any point Q(xq, yq, zq) on the segment (a segment is part of a line).

            Input

            The first line contains a single integer T (1 ≤ T ≤ 1000), the number of test cases. Each test case is a single line containing 9 integers xp, yp, zp, x1, y1, z1, x2, y2, z2. These integers are all in [-1000,1000].

            Output

            For each test case, print the case number and the minimal distance, to two decimal places.

            Sample Input

            3
            0 0 0 0 1 0 1 1 0
            1 0 0 1 0 1 1 1 0
            -1 -1 -1 0 1 0 -1 0 -1

            Sample Output

            Case 1: 1.00
            Case 2: 0.71
            Case 3: 1.00

            Problem Source

            The 32nd ACM-ICPC Beijing First Round Internet Contest

            其實和二分差不多,劃個函數(shù)曲線出來,分三段,比劃一下就很容易理解了:)

            #include <iostream>
            #include 
            <cmath>
            using namespace std;

            double dist(double l[], double r[]) {
                
            return sqrt((l[0]-r[0])*(l[0]-r[0])+(l[1]-r[1])*(l[1]-r[1])+(l[2]-r[2])*(l[2]-r[2]));
            }


            int main() {
               
            // freopen("1024.in", "r", stdin);
                int n, cas=0;
                
            double l[3], r[3], p[3], p1[3], p2[3], d1, d2;
                scanf(
            "%d"&n);
                
            while (n--{
                    scanf(
            "%lf%lf%lf%lf%lf%lf%lf%lf%lf"&p[0], &p[1], &p[2], &l[0], &l[1], &l[2], &r[0], &r[1], &r[2]);
                    
            while (dist(l, r) > 1e-4{
                        p1[
            0= (l[0+ r[0]) / 2;
                        p1[
            1= (l[1+ r[1]) / 2;
                        p1[
            2= (l[2+ r[2]) / 2;
                        p2[
            0= (r[0+ p1[0]) / 2;
                        p2[
            1= (r[1+ p1[1]) / 2;
                        p2[
            2= (r[2+ p1[2]) / 2;
                        d1 
            = dist(p1, p); d2 = dist(p2, p);
                        
            if (d2 >= d1) {
                            r[
            0= p2[0]; r[1= p2[1]; r[2= p2[2];
                        }
             else {
                            l[
            0= p1[0]; l[1= p1[1]; l[2= p1[2];
                        }

                    }

                    printf(
            "Case %d: %.2lf\n"++cas, dist(p,l));
                }

            }

            posted on 2007-10-18 11:00 閱讀(1196) 評論(0)  編輯 收藏 引用 所屬分類: 算法&ACM
            久久国产综合精品五月天| 亚洲乱亚洲乱淫久久| 久久精品国产免费一区| 99久久99这里只有免费的精品| 999久久久免费精品国产| 狠狠色丁香久久婷婷综合| 久久亚洲av无码精品浪潮| 久久综合亚洲鲁鲁五月天| 亚洲AV无码成人网站久久精品大| 久久久久AV综合网成人| 久久电影网一区| 69久久精品无码一区二区| 国内精品伊人久久久久AV影院| 日本精品久久久久中文字幕8 | 久久香蕉一级毛片| 久久99热精品| 久久最近最新中文字幕大全 | 久久精品国产亚洲AV蜜臀色欲| 欧美亚洲色综久久精品国产| 久久亚洲精品中文字幕三区| 伊人久久大香线蕉精品| 久久久久99精品成人片牛牛影视 | 久久久久国产精品人妻| 亚洲色婷婷综合久久| 久久99国产精品一区二区| 国产成人精品久久亚洲| 国内精品久久久久久久久电影网| 久久无码人妻一区二区三区午夜| 久久精品国产精品亚洲精品| 色综合久久88色综合天天 | 色综合久久综精品| 亚洲午夜无码AV毛片久久| 久久综合久久综合久久| 久久久久亚洲精品男人的天堂| 久久久久99这里有精品10 | 中文字幕久久亚洲一区| 久久精品人人槡人妻人人玩AV| 久久99精品久久久久久9蜜桃| 久久精品嫩草影院| 亚洲国产精品无码久久青草| 久久精品国产亚洲AV嫖农村妇女 |