poj3889 Fractal Streets

Posted dream-runner

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了poj3889 Fractal Streets相关的知识,希望对你有一定的参考价值。

分形图,就是找规律。。。

技术分享图片
#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;
typedef long long ll;
typedef pair<ll,ll> P;
P get_(int n,int pos){
    P ret;
    if(!n){ret.first=0;ret.second=0;return ret;}
    ll k=1<<(2*n-2),k2=1<<(n-1);
    P t=get_(n-1,pos%k);
    int opt=pos/k;
    if(opt==0)ret.first=t.second,ret.second=t.first;
    else if(opt==1)ret.first=t.first,ret.second=t.second+k2;
    else if(opt==2)ret.first=t.first+k2,ret.second=t.second+k2;
    else ret.first=2*k2-t.second-1,ret.second=k2-t.first-1;
    return ret;
}
double dis(ll x1,ll y1,ll x2,ll y2){return sqrt((double)(x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));} 
int main(){
    int T;
    scanf("%d",&T);
    while(T--){
        ll n,h,o;
        scanf("%lld%lld%lld",&n,&h,&o);
        h--;o--;
        P a1=get_(n,h),a2=get_(n,o);
        printf("%.0lf
",dis(a1.first,a1.second,a2.first,a2.second)*10.0);
    }
    return 0;
}
View Code

 

以上是关于poj3889 Fractal Streets的主要内容,如果未能解决你的问题,请参考以下文章

POJ3889 Fractal Streets

POJ3889Fractal Streets

poj3889 Fractal Streets

poj3889 Fractal Streets 题解报告

Fractal Streets poj3889

Fractal Streets