• <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年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            潛心看書研究!

            常用鏈接

            留言簿(19)

            隨筆分類(81)

            文章分類(89)

            相冊

            ACM OJ

            My friends

            搜索

            •  

            積分與排名

            • 積分 - 219045
            • 排名 - 118

            最新評論

            閱讀排行榜

            評論排行榜

            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

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

            #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 閱讀(1209) 評論(0)  編輯 收藏 引用 所屬分類: 算法&ACM
            久久国产精品免费| 亚洲国产成人精品91久久久| 久久久亚洲裙底偷窥综合| 久久精品国产久精国产思思| 一本久久a久久精品综合夜夜 | 热综合一本伊人久久精品| 久久午夜福利无码1000合集| 国产成人久久精品一区二区三区 | 久久久这里有精品| 久久国产精品久久| 亚洲国产精品无码久久久秋霞2 | 久久精品国产亚洲av麻豆图片| 国产成人久久AV免费| 色播久久人人爽人人爽人人片AV| 国产成人久久AV免费| 亚洲国产欧洲综合997久久| 国产亚洲色婷婷久久99精品91| 久久精品亚洲一区二区三区浴池 | 亚洲国产成人久久综合一区77| 国产精品久久久久9999| 日韩精品无码久久久久久| 久久精品国产福利国产琪琪| 久久发布国产伦子伦精品| 亚洲国产一成人久久精品| 中文字幕精品久久久久人妻| 狠狠精品干练久久久无码中文字幕| 91精品国产91久久久久福利| 狠狠色丁香久久婷婷综合| 国产精品久久新婚兰兰| 天天综合久久一二三区| 性高朝久久久久久久久久| 久久亚洲国产精品五月天婷| 国产精品成人无码久久久久久| 久久91精品国产91久久小草| 国产精品久久久久久影院| 久久91精品国产91久久小草| 久久成人国产精品二三区| 久久综合九色综合精品| 国产精品亚洲综合专区片高清久久久| 伊人色综合久久天天| 久久久久久A亚洲欧洲AV冫|