这个东西好像在搞矩乘的时候用过?忘了

#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>
using namespace std;
typedef long long LL;
const int mod=; int len;LL zy[],cs[];
void get_zy(LL n)
{
len=;
for(LL i=;i*i<=n;i++)
{
if(n%i==)
{
len++;
zy[len]=i;cs[len]=;
while(n%i==)n/=i,cs[len]++;
}
}
if(n>) len++, zy[len]=n, cs[len]=;
} //--------------------------------- LL quick_power(LL n,int p)
{
LL A=n%mod,ret=;
while(p>)
{
if(p%==)ret=(ret*A)%mod;
A=(A*A)%mod;p/=;
}
return ret;
}
LL fenzi(LL n,int p)
{
if(p==)return ;
if(p%==)
{
return (( fenzi(n,p/-)*(+quick_power(n,p/)) )%mod+quick_power(n,p))%mod;
}
else
{
return ( fenzi(n,p/)*(+quick_power(n,p/+)) )%mod;
}
}
int main()
{
LL n;int p;
while(scanf("%lld%d",&n,&p)!=EOF)
{
get_zy(n); LL ans=;
for(int i=;i<=len;i++)
{
ans=(ans*fenzi(zy[i],cs[i]*p))%mod;
}
printf("%lld\n",ans);
}
return ;
}

poj1845

3889那题太无聊了,题意还贼难理解,YY了下做法,就是很裸分治找在那个位置,维护横纵区间

手工栈太麻烦了,看这题吧bzoj2819Nim 但是好像机友们只传1个参数的搜索也可以

总的来讲没什么意思。

upd:

填坑:poj3889一道分形题,这种通过搜索变量交换进行翻转的题挺好的。反正自己肯定看得懂就不详写了

#include<cstdio>
#include<iostream>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>
using namespace std;
typedef long long LL; LL Bin[];
void dfs(LL n,LL k,LL &x,LL &y)
{
if(n==)
{
if(k==)x=,y=;
else if(k==)x=,y=;
else if(k==)x=,y=;
else x=,y=;
return ;
} LL d=Bin[n-]*Bin[n-];
if(k<=d)//左上
{
dfs(n-,k,y,x);
}
else if(k<=*d)//右上
{
dfs(n-,k-d,x,y);
y+=Bin[n-];
}
else if(k<=*d)//右下
{
dfs(n-,k-*d,x,y);
x+=Bin[n-];y+=Bin[n-];
}
else//左下
{
dfs(n-,k-*d,y,x);
x=Bin[n]+-x;y=Bin[n-]+-y;
}
} int main()
{
Bin[]=;for(int i=;i<=;i++)Bin[i]=Bin[i-]*2LL;
int T;
scanf("%d",&T);
while(T--)
{
LL n,st,ed;
scanf("%lld%lld%lld",&n,&st,&ed);
LL stx,sty,edx,edy;
dfs(n,st,stx,sty),dfs(n,ed,edx,edy);
printf("%.0lf\n",sqrt(double((stx-edx)*(stx-edx)+(sty-edy)*(sty-edy)))*);
}
return ;
}

poj3889

0x03 递归的更多相关文章

  1. C# TreeGridView 实现进程列表

    效果如图 0x01 获取进程列表,使用Win32Api规避"拒绝访问"异常 public List<AppProcess> GetAppProcesses() { In ...

  2. Java数据结构和算法 - 递归

    三角数字 Q: 什么是三角数字? A: 据说一群在毕达哥拉斯领导下工作的古希腊的数学家,发现了在数学序列1,3,6,10,15,21,……中有一种奇特的联系.这个数列中的第N项是由第N-1项加N得到的 ...

  3. 5-6 c语言之【枚举,联合体,递归】

    今天学习了枚举,联合体,递归,重点在于递归,所以从网上找到了一些递归的题目进行练习,毕竟程序员界流传一句话,会用循环的是人,会用递归的是神,哈哈哈 还是按次序进行梳理,第一个枚举,枚举和宏定义很相似, ...

  4. .NET 基础 一步步 一幕幕[面向对象之方法、方法的重载、方法的重写、方法的递归]

    方法.方法的重载.方法的重写.方法的递归 方法: 将一堆代码进行重用的一种机制. 语法: [访问修饰符] 返回类型 <方法名>(参数列表){ 方法主体: } 返回值类型:如果不需要写返回值 ...

  5. 算法笔记_013:汉诺塔问题(Java递归法和非递归法)

    目录 1 问题描述 2 解决方案  2.1 递归法 2.2 非递归法 1 问题描述 Simulate the movement of the Towers of Hanoi Puzzle; Bonus ...

  6. Android 算法 关于递归和二分法的小算法

     // 1. 实现一个函数,在一个有序整型数组中二分查找出指定的值,找到则返回该值的位置,找不到返回 -1. package demo; public class Mytest { public st ...

  7. 二叉树的递归实现(java)

    这里演示的二叉树为3层. 递归实现,先构造出一个root节点,先判断左子节点是否为空,为空则构造左子节点,否则进入下一步判断右子节点是否为空,为空则构造右子节点. 利用层数控制迭代次数. 依次递归第二 ...

  8. 递归实现n(经典的8皇后问题)皇后的问题

    问题描述:八皇后问题是一个以国际象棋为背景的问题:如何能够在8×8的国际象棋棋盘上放置八个皇后, 使得任何一个皇后都无法直接吃掉其他的皇后?为了达到此目的,任两个皇后都不能处于同一条横行.纵行或斜线上 ...

  9. C语言用分别用递归和循环求数字的阶乘的方法

    以下代码均为 自己 实现,嘻嘻! 参考文章:http://blog.csdn.net/talk_8/article/details/46289683 循环法 int CalFactorial(int ...

随机推荐

  1. Cracking the Coding Interview 6.2

    There is an 8*8 chess board in which two diagnolly opposite corners have been cut off. You are given ...

  2. BZOJ 4771 主席树+倍增+set

    思路: 因为有深度的限制,并且我们是在线段树上维护权值,所以我们把点按照dep排序,然后一个一个修改...主席树的下标就是dfs序,子树的查询就是区间查询... 但是发现这样怎么去维护LCA呢...因 ...

  3. Codeforces Round #198 (Div. 2)A,B题解

    Codeforces Round #198 (Div. 2) 昨天看到奋斗群的群赛,好奇的去做了一下, 大概花了3个小时Ak,我大概可以退役了吧 那下面来稍微总结一下 A. The Wall Iahu ...

  4. logrotate配置文件

    一.logrotate配置文件 /etc/logrotate.conf

  5. Super超级ERP系统---(2)基础信息管理

    这一节我我们来了解下super系统的基础信息模块有哪些功能以及怎么实现.任何功能再强大的系统,也需要基本信息来支撑.超级erp系统的基础信息主要有供应商管理,品牌管理,分类管理,商品管理几个模块构成. ...

  6. BZOJ1222: [HNOI2001]产品加工(诡异背包dp)

    Time Limit: 15 Sec  Memory Limit: 162 MBSubmit: 907  Solved: 587[Submit][Status][Discuss] Descriptio ...

  7. BZOJ4517: [Sdoi2016]排列计数(组合数+错位排列)

    Time Limit: 60 Sec  Memory Limit: 128 MBSubmit: 1626  Solved: 994[Submit][Status][Discuss] Descripti ...

  8. Android通过百度地图API用Service和Alarm在后台定时获取地理位置信息

    本文主要介绍了Android项目集成百度地图API,使用AlarmManager定时调用Service,在Service中请求坐标更新,并通过坐标得到省.市和县三级地理位置信息的方法. 程序结构很简单 ...

  9. RAP开发入门-布局管理

    布局类继承关系 FillLayout  new FillLayout(SWT.VERTICAL/HORIZONTAL)设置竖直/水平填充 RowLayout wrap折行显示.pack自适应布局(布局 ...

  10. IDEA导入个性化主题的方法

    IDEA的主题可以自定义,也可从网上下载 http://www.riaway.com/theme.php 喜欢的主题,保存到本地. 主题是一个jar的包.导入到idea的方法如下: file –> ...