【题目描述】

    

【题目链接】

    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. Rsync+inotify 实时数据同步 inotify master 端的配置

    强大的,细致的,异步的文件系统事件监控机制.Linux 内科从 2.6.13 起支持 inotify Inotify 实现的几款软件:Inotify,sersync,lsyncd ※Inotify 实 ...

  2. CentOS7系统局域网内配置本地yum源解决cannot find a valid baseurl for repo

    一.     问题详情 因为服务器无法连接外网,所有直接用yum安装某些功能将受到影响,报错如下: Error: Cannot find a valid baseurl for repo: base ...

  3. 四轴飞行器飞行原理与双闭环PID控制

    四轴轴飞行器是微型飞行器的其中一种,相对于固定翼飞行器,它的方向控制灵活.抗干扰能力强.飞行稳定,能够携带一定的负载和有悬停功能,因此能够很好地进行空中拍摄.监视.侦查等功能,在军事和民用上具备广泛的 ...

  4. ssh免口令密码登录及兼容性处理

    1). client ---> server 客户端发起对服务器的连接,登录服务器. 2). 须在客户端生成密钥对 注意: 公钥加密私钥解:私钥加密公钥解. 可以发布公钥,但私钥是不能出本机的. ...

  5. LNMP集群架构篇

    一.LNMP介绍 1.使前端web服务和后端存储服务进行串联 2.主要实现处理php动态请求 工作原理: L:linux  N:nginx  M:mysql   P:php 二.lnmp部署 我的环境 ...

  6. java 创建匿名对象及声明map list时初始化

    java 创建匿名对象 类似于c# 中的 new { a:"aaa",b:"bbb"}; 1 创建匿名对象Object myobj = new Object() ...

  7. 解决nginx proxy_pass反向代理cookie,session丢失的问题

    参考地址:https://www.jianshu.com/p/34abe7eb6f0b 为什么cookie 会丢失? 比如说一个没有经过代理的地址 : http://127.0.0.1/project ...

  8. thinkphp 项目不能直接域名访问 而要加index.php 才能访问

    一.apache 服务器配置问题 vim /usr/local/apache2/conf/httpd.conf 在ifModule这里加入index.php <IfModule dir_modu ...

  9. 前端自动化gulp使用方法

    gulp介绍 1. 网站: http://slides.com/contra/gulp#/ 2. 特点 易于使用:通过代码优于配置的策略, Gulp 让简单的任务简单,复杂的任务可管理. 构建快速 : ...

  10. RAC搭建---自己做

    一.本地磁盘是指你本身加上去的磁盘,只能本机使用的.共享磁盘是指可以多台机器同时读取写入.你做RAC就要用到共享存储: 二.ORC分区一般1G*3  数据分区5G*3  ,FRA分区一般5G*3  这 ...