Stupid cat & Doge (分形图)
【题目描述】

【题目链接】
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 (分形图)的更多相关文章
- SurfaceView 绘制分形图
之前一直做的是应用类,这次抽时间,参考网上资料实践了下SurfaceView.目标是在页面上画一个科赫曲线的分形图. 代码如下: package com.example.fredric.demo02; ...
- JavaScript动画实例:递归分形图动态展示
在“JavaScript图形实例:SierPinski三角形” 和“JavaScript图形实例:Levy曲线及其变形”等文章中我们介绍了通过递归生成分形图形的方法.我们可以将绘制的分形图形每隔一定的 ...
- 【OpenJudge 8463】Stupid cat & Doge
http://noi.openjudge.cn/ch0204/8463/ 挺恶心的一道简单分治. 一开始准备非递归. 大if判断,后来发现代码量过长,决定大打表判断后继情况,后来发现序号不对称. 最后 ...
- Linux下使用cat制作“内涵图”
http://blog.csdn.net/odaynot/article/details/7939869
- newton法分形图
方程:z^6-1=0; %f为求解的方程,df是导数,使用的时候用funchandler定义 %res是目标分辨率,iter是循环次数,(xc,yc)是图像的中心,xoom是放大倍数 %参数视自己需求 ...
- python图片和分形树
链接: 这10个Python项目很有趣! Python 绘制分形图(曼德勃罗集.分形树叶.科赫曲线.分形龙.谢尔宾斯基三角等)附代码 使用Python生成树形图案 神奇的代码:用 Python 生成分 ...
- 分形在遥感和GIS中的应用
GIS等高线化简 遥感图像的追踪 分形matlab实现:分形应用于遥感图像处理 低分辨率和高分辨率图形它们的形状是相似的(图像增强) 贪吃蛇和蚁群算法:试想管中窥豹,一只小蚂蚁 ...
- 分形之列维(levy)曲线
莱维C形曲线(Lévy C curve)是个自我相似的分形,最先由保罗·皮埃尔·莱维在1938年的论文Plane or Space Curves and Surfaces Consisting of ...
- 饿了么监控系统 EMonitor 与美团点评 CAT 的对比
背景介绍 饿了么监控系统EMonitor:是一款服务于饿了么所有技术部门的一站式监控系统,覆盖了系统监控.容器监控.网络监控.中间件监控.业务监控.接入层监控以及前端监控的数据存储与查询.每日处理总数 ...
随机推荐
- ASE Alpha Sprint - backend scrum 3
本次scrum于2019.11.7再sky garden进行,持续10分钟. 参与人: Zhikai Chen, Jia Ning, Hao Wang 请假: Xin Kang, Lihao Ran, ...
- linux--基础知识4
#当前已什么用户登陆,创建的目录或文件,他的属组和主就是谁 #用户对目录拥有的几种权限 # ll -d查看目录当前权限信息 #r:可以查看该目录下的子文件名,子目录 #w:可以在该目录下创建,删除,重 ...
- 22pygame 安装
实战步骤 pygame 快速体验 飞机大战 实战 确认模块 --pygame pygame 就是一个 Python 模块, 专为电子游戏设计 提示 : 学习第三方模块, 通常最好的参考资料就在官方网站 ...
- 【串线篇】spring boot外部配置加载顺序
SpringBoot也可以从以下位置加载配置: 原则仍然是优先级从高到低:高优先级的配置覆盖低优先级的配置,所有的配置会形成互补配置 1.命令行参数 所有的配置都可以在命令行上进行指定 java -j ...
- AIX系统软件安装问题
一.安装软件时一定要cd到介质目录中 二.选择accept new licence 三.更新系统时避免使用updata_all,要手动选择出要更新的软件 四.oracle11G的rac还要用到open ...
- python语句执行
python文件中的语句,按顺序执行,执行import时,原文件会入栈,等import文件执行完成后,才会出栈执行. load/const.py --- import os DB_ADDRESS = ...
- VM虚拟机中MAC OS调整磁盘大小
1.打开终端,输入diskutil list: 2.从显示的列表中找到你需要扩展的分区(是分区不是磁盘,分区的ID一般为diskXsX): 3.然后输入 diskutil resizeVolume d ...
- 基于MaxCompute InformationSchema进行冷门表热门表访问分析
一.需求场景分析 在实际的数据平台运营管理过程中,数据表的规模往往随着更多业务数据的接入以及数据应用的建设而逐渐增长到非常大的规模,数据管理人员往往希望能够利用元数据的分析来更好地掌握不同数据表的使用 ...
- django数据库迁移相关【sqlite3迁移到MySQL】(django2.0.3测试通过)
前言 项目部署到服务器之后,用的数据库还是sqlite3. 发现一些问题,sqlite3是小巧,但是服务器上查看数据库比较费劲,不能直观看到数据.可是我们经常需要即时.直观查看数据,这就用到MySQL ...
- 从Word文档粘贴内容至Web编辑器的问题
Chrome+IE默认支持粘贴剪切板中的图片,但是我要发布的文章存在word里面,图片多达数十张,我总不能一张一张复制吧?Chrome高版本提供了可以将单张图片转换在BASE64字符串的功能.但是无法 ...