zoukankan      html  css  js  c++  java
  • HDU1030 Delta-wave

    这里写图片描述
    A triangle field is numbered with successive integers in the way shown on the picture below.
    The traveller needs to go from the cell with number M to the cell with number N. The traveller is able to enter the cell through cell edges only, he can not travel from cell to cell through vertices. The number of edges the traveller passes makes the length of the traveller’s route.

    Write the program to determine the length of the shortest route connecting cells with numbers N and M.

    Input
    Input contains two integer numbers M and N in the range from 1 to 1000000000 separated with space(s).

    Output
    Output should contain the length of the shortest route.

    Sample Input
    6 12

    Sample Output
    3
    理解链接:http://blog.csdn.net/moonspiritacm/article/details/53969418
    我还没懂~~

    #include<stdio.h>
    #include<math.h>
    #include<algorithm>
    #include<iostream>
    using namespace std;
    int main()
    {
        long long int m,n;
        while(~scanf("%lld%lld",&n,&m))
        {
            int a1,a2,b1,b2,c1,c2;
            a1=sqrt(n-1)+1;
            a2=sqrt(m-1)+1;
            b1=(a1*a1-n)/2+1;
            b2=(a2*a2-m)/2+1;
            c1=(n-(a1-1)*(a1-1)+1)/2;
            c2=(m-(a2-1)*(a2-1)+1)/2;
            printf("%d
    ",abs(a1-a2)+abs(c1-c2)+abs(b1-b2));
        }
        return 0;
    }
    
    "No regrets."
  • 相关阅读:
    Middleware
    Languages
    Errors
    Config
    CLI Console
    Linux远程复制文件
    CentOS下安装Gitlab
    Maven_POM配置结构
    Maven_POM配置详解
    MySQL索引背后的数据结构及算法原理
  • 原文地址:https://www.cnblogs.com/zxy160/p/7215151.html
Copyright © 2011-2022 走看看