【题目描述】

    

【题目链接】

    http://noi.openjudge.cn/ch0204/8463/

【算法】

    为求等级N下的点的坐标可由几何关系找到其与等级N-1下对应点的关系,然后递归直至所有点的祖先(等级0)即可计算出坐标。

【代码】

 #include <bits/stdc++.h>
using namespace std;
typedef long long ll;
int t;
ll n,s,d;
pair<ll,ll> calc(int state,ll num)
{
if(!state) return make_pair(,);
ll side=<<(state-),sum=side*side;
ll rec=num/sum,pre_num=num%sum;
pair<ll,ll> pr=calc(state-,pre_num);
switch(rec) {
case : swap(pr.first,pr.second); break;
case : pr.first+=side; break;
case : pr.first+=side,pr.second+=side; break;
case : swap(pr.first,pr.second),pr.first=side-pr.first+,pr.second=side*-pr.second+;
}
return pr;
}
int main()
{
scanf("%d",&t);
while(t--) {
scanf("%d%lld%lld",&n,&s,&d);
pair<ll,ll> p1=calc(n,s-);
pair<ll,ll> p2=calc(n,d-);
ll dx=p1.first-p2.first,dy=p1.second-p2.second;
printf("%.0f\n",sqrt(dx*dx*1.0+dy*dy*1.0)*);
}
return ;
}

【《算法竞赛进阶指南》大佬代码,侵删】

 /*
Author: Yufei Du
本程序仅供参考
*/
#include <cmath>
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <algorithm>
using namespace std; pair<__int64, __int64> recur (int stage, __int64 id)
{
if (stage == ) return make_pair(, );
__int64 max = << (stage - ), s = max * max;
__int64 z = id / s, idsp = id % s;
pair<__int64, __int64> psp = recur(stage - , idsp);
if (z == || z == ) swap(psp.first, psp.second);
if (z == )
{
psp.first = max - psp.first - ;
psp.second = max - psp.second - ;
}
if (z == || z == ) psp.first += max;
if (z == || z == ) psp.second += max;
return psp;
}
int main ()
{ int kase; for (scanf("%d", &kase); kase; --kase)
{
int n; __int64 h, o;
scanf("%d %I64d %I64d", &n, &h, &o);
pair<__int64, __int64> hp = recur(n, h - );
pair<__int64, __int64> op = recur(n, o - );
__int64 dx = abs(hp.first - op.first), dy = abs(hp.second - op.second);
printf("%.0f\n", (double)sqrt(dx * dx + dy * dy) * );
}
return ;
}

Stupid cat & Doge (分形图)的更多相关文章

  1. SurfaceView 绘制分形图

    之前一直做的是应用类,这次抽时间,参考网上资料实践了下SurfaceView.目标是在页面上画一个科赫曲线的分形图. 代码如下: package com.example.fredric.demo02; ...

  2. JavaScript动画实例:递归分形图动态展示

    在“JavaScript图形实例:SierPinski三角形” 和“JavaScript图形实例:Levy曲线及其变形”等文章中我们介绍了通过递归生成分形图形的方法.我们可以将绘制的分形图形每隔一定的 ...

  3. 【OpenJudge 8463】Stupid cat & Doge

    http://noi.openjudge.cn/ch0204/8463/ 挺恶心的一道简单分治. 一开始准备非递归. 大if判断,后来发现代码量过长,决定大打表判断后继情况,后来发现序号不对称. 最后 ...

  4. Linux下使用cat制作“内涵图”

    http://blog.csdn.net/odaynot/article/details/7939869

  5. newton法分形图

    方程:z^6-1=0; %f为求解的方程,df是导数,使用的时候用funchandler定义 %res是目标分辨率,iter是循环次数,(xc,yc)是图像的中心,xoom是放大倍数 %参数视自己需求 ...

  6. python图片和分形树

    链接: 这10个Python项目很有趣! Python 绘制分形图(曼德勃罗集.分形树叶.科赫曲线.分形龙.谢尔宾斯基三角等)附代码 使用Python生成树形图案 神奇的代码:用 Python 生成分 ...

  7. 分形在遥感和GIS中的应用

    GIS等高线化简 遥感图像的追踪 分形matlab实现:分形应用于遥感图像处理             低分辨率和高分辨率图形它们的形状是相似的(图像增强) 贪吃蛇和蚁群算法:试想管中窥豹,一只小蚂蚁 ...

  8. 分形之列维(levy)曲线

    莱维C形曲线(Lévy C curve)是个自我相似的分形,最先由保罗·皮埃尔·莱维在1938年的论文Plane or Space Curves and Surfaces Consisting of ...

  9. 饿了么监控系统 EMonitor 与美团点评 CAT 的对比

    背景介绍 饿了么监控系统EMonitor:是一款服务于饿了么所有技术部门的一站式监控系统,覆盖了系统监控.容器监控.网络监控.中间件监控.业务监控.接入层监控以及前端监控的数据存储与查询.每日处理总数 ...

随机推荐

  1. shell脚本--expect自动应答

    expect自动应答  TCL语言 需求1:远程登录到A主机,什么事情也不做 #! /usr/bin/env expect # 开启一个程序 spawn ssh root@192.144.213.11 ...

  2. 【leetcode】1033. Moving Stones Until Consecutive

    题目如下: Three stones are on a number line at positions a, b, and c. Each turn, you pick up a stone at ...

  3. github上拉去代码执行 npm install报错code:128

    npm ERR! code npm ERR! Command failed: D:\Program Files\Git\cmd\git.EXE clone --mirror -q git://gith ...

  4. python学习笔记(十七)flask模块写接口

    import flask,json from tools import op_mysql #op_mysql() # 接口,后台服务 server = flask.Flask(__name__) #把 ...

  5. HashMap的几种遍历方式(转载)

    今天讲解的主要是使用多种方式来实现遍历HashMap取出Key和value,首先在java中如果想让一个集合能够用for增强来实现迭代,那么此接口或类必须实现Iterable接口,那么Iterable ...

  6. 阿里云如何打破Oracle迁移上云的壁垒

    2018第九届中国数据库技术大会,阿里云数据库产品专家萧少聪带来以阿里云如何打破Oracle迁移上云的壁垒为题的演讲.Oracle是指“数据库管理系统”,面对Oracle迁移上云的壁垒,阿里云如何能够 ...

  7. 调试IPV6

    从Mac分享IPV6 WIFI的方法: 按住opition + 系统设置中的share 进入 如果被拒了要上诉或者回复审核团队邮件,可以参考这个写: 尊敬的APP审查委员会: 您们好!我们希望将自己开 ...

  8. Android逆向之旅---静态分析技术来破解Apk

    一.前言 从这篇文章开始我们开始我们的破解之路,之前的几篇文章中我们是如何讲解怎么加固我们的Apk,防止被别人破解,那么现在我们要开始破解我们的Apk,针对于之前的加密方式采用相对应的破解技术,And ...

  9. 170817关于AJAX的知识点

    1.AJAX                  [1] AJAX简介                        全称: Asynchronous JavaScript And XML        ...

  10. HDU4035 Maze (概率DP)

    转:https://www.cnblogs.com/kuangbin/archive/2012/10/03/2711108.html 题意: 有n个房间,由n-1条隧道连通起来,实际上就形成了一棵树, ...