数据范围:p,q≤20。

只能说我整个人傻逼了.....

我们考虑三角函数的部分性质:

$sin(x)=\sqrt{ 1-cos^2(x)}$

$cos(x)=\sqrt{1-sin^2(x)}$

$tan(x)=\frac{sin(x)}{cos(x)}$

根据这三条公式,我们可以据此推出以下六种转移方式,即:

$arcsin(x)→cos(x)\ or\ tan(x)$

$arccos(x)→sin(x)\ or\ tan(x)$

$arctan(x)→sin(x)\ or\ cos(x)$

我们又根据上述的部分性质,我们用分数$\frac{\sqrt{a}}{\sqrt{b}}$去表示x,其中a,b均为非负整数。

不难根据以下转移式子得到转移出的根式

由$arcsin(x)→cos(x)$得到$\frac{\sqrt{b-a}}{\sqrt{b}}$

由$arcsin(x)→tan(x)$得到$\frac{\sqrt{a}}{\sqrt{b-a}}$

由$arccos(x)→sin(x)$得到$\frac{\sqrt{b-a}}{\sqrt{b}}$

由$arccos(x)→tan(x)$得到$\frac{\sqrt{b-a}}{\sqrt{a}}$

由$arctan(x)→sin(x)$得到$\frac{\sqrt{a}}{\sqrt{a+b}}$

由$arctan(x)→cos(x)$得到$\frac{\sqrt{b}}{\sqrt{a+b}}$

然后简单地记忆搜索以下就可以了。

 #include<bits/stdc++.h>
using namespace std;
int vis[][]={};
int x,y;
int cnt[]={}; int use=;
void add(int x,int y){cnt[++use]=y; cnt[++use]=x;}
int dfs(int a,int b){
if(a>||b>||a<||b<=||(a==&&b!=)) return ;
int d=__gcd(a,b);
a/=d; b/=d;
if(a==x&&b==y) return ;
if(vis[a][b]) return ;
vis[a][b]=;
if(dfs(b-a,b)) {add(,); return ;}
if(dfs(a,b-a)) {add(,); return ;}
if(dfs(a,a+b)) {add(,); return ;}
if(dfs(b,a+b)) {add(,); return ;}
if(dfs(b-a,b)) {add(,); return ;}
if(dfs(b-a,a)) {add(,); return ;}
return ;
} int main(){
string s; cin>>s;
scanf("%d/%d",&x,&y);
int d=__gcd(x,y);
x/=d; y/=d;
x=x*x; y=y*y;
dfs(,);
while(use--){
printf("%d",cnt[use+]);
}
}

【GDOI2018模拟8】 数学竞赛 三角函数性质+记忆化搜索的更多相关文章

  1. POJ 2704 Pascal's Travels 【DFS记忆化搜索】

    题目传送门:http://poj.org/problem?id=2704 Pascal's Travels Time Limit: 1000MS   Memory Limit: 65536K Tota ...

  2. 2017广东工业大学程序设计竞赛决赛 题解&源码(A,数学解方程,B,贪心博弈,C,递归,D,水,E,贪心,面试题,F,贪心,枚举,LCA,G,dp,记忆化搜索,H,思维题)

    心得: 这比赛真的是不要不要的,pending了一下午,也不知道对错,直接做过去就是了,也没有管太多! Problem A: 两只老虎 Description 来,我们先来放松下,听听儿歌,一起“唱” ...

  3. UVa 11762 Race to 1 (数学期望 + 记忆化搜索)

    题意:给定一个整数 n ,然后你要把它变成 1,变换操作就是随机从小于等于 n 的素数中选一个p,如果这个数是 n 的约数,那么就可以变成 n/p,否则还是本身,问你把它变成 1 的数学期望是多少. ...

  4. uva 11762 数学期望+记忆化搜索

    题目大意:给一个正整数N,每次可以在不超过N的素数中随机选择一个P,如果P是N的约数,则把N变成N/p,否则N不变,问平均情况下需要多少次随机选择,才能把N变成1? 分析:根据数学期望的线性和全期望公 ...

  5. [CSP-S模拟测试]:集合合并(记忆化搜索)

    题目传送门(内部题133) 输入格式 第一行一个正整数$n$. 第二行$n$个正整数$a_i$,表示一开始有$S_i=\{a_i\}$ 输出格式 输出一个非负整数表示最大的收益之和 样例 样例输入: ...

  6. [CSP-S模拟测试]:彩球问题(记忆化搜索)

    题目传送门(内部题91) 输入格式 第一行一个正整数$N$,表示颜色种类数. 第二行$N$个正整数$k[i],k[i]$表示第$i$种颜色的数量$(1\leqslant k[i]\leqslant 3 ...

  7. Codevs_1017_乘积最大_(划分型动态规划/记忆化搜索)

    描述 http://codevs.cn/problem/1017/ 给出一个n位数,在数字中间添加k个乘号,使得最终的乘积最大. 1017 乘积最大 2000年NOIP全国联赛普及组NOIP全国联赛提 ...

  8. 记忆化搜索 codevs 2241 排序二叉树

    codevs 2241 排序二叉树 ★   输入文件:bstree.in   输出文件:bstree.out   简单对比时间限制:1 s   内存限制:128 MB [问题描述] 一个边长为n的正三 ...

  9. HDU 4597 Play Game(记忆化搜索,深搜)

    题目 //传说中的记忆化搜索,好吧,就是用深搜//多做题吧,,这个解法是搜来的,蛮好理解的 //题目大意:给出两堆牌,只能从最上和最下取,然后两个人轮流取,都按照自己最优的策略,//问说第一个人对多的 ...

随机推荐

  1. 开始Java之旅

      从今天起,cgg将给大家讲讲Java这种神奇的东西.   至于配置环境变量,大家可以看看我的博客:环境变量上面有详细解释.   下面先给大家一个公式:    public class [文件名]{ ...

  2. 2018.10.13 bzoj1070: [SCOI2007]修车(费用流)

    传送门 费用流经典题目. 自我感觉跟TheWindy′sThe Windy'sTheWindy′s很像. 利用费用提前计算的思想来建图就行了. 代码: #include<bits/stdc++. ...

  3. java,arduino,C#之间的一些编码转换

    1.C#-> Encoding.UTF8.GetBytes( "abc中") ->[97,98,99,228,184,173] java->byte[] bs= ...

  4. flask_模板

    由于python中生成html比较繁琐,所以flask自动为你配置好jinjia2模板.下面我们开始学习模板应用吧~ 1.编写microblog模块 注:(1)这里为了渲染模板,我们从Flask导入了 ...

  5. 201709020工作日记--synchronized、ReentrantLock、读写锁

    1.reentrantLock java.util.concurrent.lock 中的Lock 框架是锁定的一个抽象,它允许把锁定的实现作为 Java 类,而不是作为语言的特性来实现.这就为Lock ...

  6. Hdu428 漫步校园 2017-01-18 17:43 88人阅读 评论(0) 收藏

    漫步校园 Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other) Total Submissi ...

  7. 用 PHP 编写 http 服务器

    概述 众所周知,我们一般使用 PHP 开发Web程序时需要使用到比如Apache或Nginx等Web服务器来支持,那么有没有办法直接使用PHP开发HTTP服务器,答案当然是可以的,最近看了一遍Work ...

  8. IFNULL函数

    MySQL函数里有一个很有用的函数IFNULL,它的形式是IFNULL(fieldA,fieldB),意义是当字段fieldA是NULL时取fieldB,不是NULL时取fieldA的值. 这个函数与 ...

  9. 执行Docker命令报错解决办法

    shim error: docker-runc not installed on system   服务器重启以后,执行docker命令报以上错误,解决办法如下: cd /usr/libexec/do ...

  10. Web app制作细节:web app互动制作技巧

    Google .微软.苹果三大巨头紧锣密鼓地在web app的研发产品领域圈地设岗,并试图建立以自己为中心的”云“服务平台,企图在web app时代到来的时候充当霸主.本文将围绕web app的制作, ...