zoukankan      html  css  js  c++  java
  • 【杭电】[2071]无限的路

    这里写图片描述
    这里写图片描述
    这里写图片描述

    找点坐标的变化规律然后
    后一个是前一个加sqrt(2.0)
    特殊的是折线由下转上时
    是加上两点的距离

    #include<stdio.h>
    #include<math.h>
    #include<string.h>
    #define gen sqrt(2.0)
    double a[1000][1000];
    double dis(int x1,int y1,int x2,int y2) {
        return sqrt(pow(x1-x2,2.0)+pow(y1-y2,2.0));
    }
    int main() {
    //  freopen("input.txt","r",stdin);
    //  freopen("output.txt","w",stdout);
        a[0][0]=0;
        double last=a[0][1]=1;
        int k=0;
        int j;
        for(int i=0; i<200; i++) {
            k++;
            for(j=0; j<=k; j++) {
                if(j==0&&k-j==1)
                    continue;
                a[j][k-j]=last+gen;
                if(j==0)
                    a[j][k-j]-=gen;
                last=a[j][k-j];
                //      printf("%d %d %lf
    ",j,k-j,last);
            }
            last+=dis(k,0,0,k+1);
            //  printf("-%lf-%d-%lf-
    ",last,k,dis(k-1,0,0,k));
        }
    //  printf("%lf
    ",a[99][99]);
        int T;
        scanf("%d",&T);
        while(T--) {
            int x1,y1,x2,y2;
            scanf("%d %d %d %d",&x1,&y1,&x2,&y2);
            double sum1=a[x1][y1];
            double sum2=a[x2][y2];
            if(sum2>sum1) {
                printf("%.3lf
    ",sum2-sum1);
            } else
                printf("%.3lf
    ",sum1-sum2);
        }
        return 0;
    }

    题目地址:【杭电】[2071]无限的路

  • 相关阅读:
    kafka搭建
    kafaka学习笔记
    metastore 简单说明
    二 python并发编程之多进程-理论
    文件指针偏移量
    FTP
    1 并发编程
    操作系统简介
    1 网络编程
    网络编程-osi七层
  • 原文地址:https://www.cnblogs.com/BoilTask/p/12569600.html
Copyright © 2011-2022 走看看