www.codechef.com/MAY15/problems/CHAPD

一道比较神奇的题目...

看到题目后自己yy出了个傻逼算法...然后对拍都是对的...提交都是错的...然后一看"Yes"打成"YES"了...= =!!人傻逼就是会犯脑残错误...

我的算法是$O\left(\log^2{n}\right)$的,但是实践中跑得很快...

这道题需要不多的数论知识= =...

我们设pf(x)={p|primes(p),p|x}

显然题目要求你判断$\mathtt{pf}(B)\subseteq \mathtt{pf}(A)$.

然后是比较奇怪的想法...我一开始就想到了,问了问LZW学长但是他没想到...

那么我们要判断的是$\mathtt{pf}\left(\gcd{A,B}\right)=\mathtt{pf}\left(B\right)$

我们记$C=\gcd{A,B}$

那么上面命题成立的充分必要条件是$\mathtt{pf}\left(\frac{B}{C}\right)\subseteq \mathtt{pf}\left(C\right)$

这个证明就yy一下好了,感觉挺好证的..

那么就可以递归求解了...

代码

#include <cstdio>
typedef long long ull;
ull a,b;
ull gcd(ull a,ull b){
return a?gcd(b%a,a):b;
}
bool isk(ull a,ull b){
ull c=gcd(a,b);
ull d=b/c;
if(c==1&&d!=1) return false;
if(d!=1ll) return isk(c,d);
return true;
}
int T;
int main(){
scanf("%d",&T);
while(T--){
scanf("%lld%lld",&a,&b);
if(isk(a,b)) printf("Yes\n"); else printf("No\n");
}
return 0;
}

CC MayClg 15 T3的更多相关文章

  1. 2019.2.15 t3 平均值

    #include <cstdio> #include <iostream> #include <cstring> #include <cmath> #i ...

  2. Win7系统安装 Photoshop CC 中文完全破解版

    Win7系统安装 Photoshop CC 中文完全破解版 谨以此教程献给某位做UI设计的朋友^_^! 01. 确定自己的系统是32位的还是64位的,本人电脑是64位 02. 将 Photoshop_ ...

  3. linux awk命令学习

    . awk的运行过程 ) awk_script的组成: ① awk_script可以由一条或多条awk_cmd组成,两条awk_cmd之间一般以NEWLINE分隔 ② awk_cmd由两部分组成: a ...

  4. SQL表值函数(上月添加1-28)

    ALTER function [dbo].[fn_getdate3] ( ) ) RETURNS @Table_Var TABLE ( LastTime datetime ) as begin Dec ...

  5. Dreamweaver 升级问题汇总

    Adobe的产品开始从CC (Creative Cloud) 开始转向云平台,CS将逐渐成为过去时.不过CC并不限制用户在同一台机器上同时使用CS和CC,这种策略估计要持续较长一段时间. If you ...

  6. you-get中文说明

    来源于:https://github.com/soimort/you-get/wiki/%E4%B8%AD%E6%96%87%E8%AF%B4%E6%98%8E You-Get 乃一小小哒命令行程序, ...

  7. PHP和Golang使用Thrift1和Thrift2访问Hbase0.96.2(ubuntu12.04)

    目录: 一.Thrift1和Thrift2的简要介绍 1) 写在前面 2) Thrift1和Thrift2的区别  二.Thrift0.9.2的安装 1) 安装依赖插件 2) Thrift0.9.2的 ...

  8. MySQL Query Profile

    MySQL Query Profiler, 可以查询到此 SQL 语句会执行多少, 并看出 CPU/Memory 使用量, 执行过程 System lock, Table lock 花多少时间等等.从 ...

  9. Profiling MySQL queries from Performance Schema

    转自:http://www.percona.com/blog/2015/04/16/profiling-mysql-queries-from-performance-schema/ When opti ...

随机推荐

  1. MVC——应用Ajax获取不到数据问题解答

    当我们使用控制器利用Ajax获取表单数据时,调试为null,这时看看你接受表单时定义的参数名字是否为action 其实不能起这个名字的,这个名字和控制器关键字冲突了 随便换个其它名字就好了,比如我起个 ...

  2. javascript-XMLHttpRequest

    JS方法: var xmlhttp;//一定注意是写在外面的全局变量,我调了一个上午才发现. function verify(){ //使用dom方式获取文本框中的值 var userName=doc ...

  3. POJ 2153 stl

    #include<iostream> #include<map> #include<string> using namespace std; int main() ...

  4. Java基础-序列化

    Java序列化是将一个对象编码成一个字节流,反序列化将字节流编码转换成一个对象. 序列化是Java中实现持久化存储的一种方法: 为数据传输提供了线路级对象表示法. Java的序列化机制是通过在运行时判 ...

  5. jquery插件库

    jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多javascript高手加入其team. jQuery是继prototype之后又一个优秀的Javascrīpt框架.其经典 ...

  6. SQLServer用sql语句怎么返回一个月所有的天数

    可用如下sql语句: select convert(varchar(10),dateadd(DAY,t2.number,t1.day),120) day from (select '2015-07'+ ...

  7. system.badimageformatexception 未能加载文件或程序集问题解决

    原因是项目CPU默认X86我的系统是X64,将目标平台改为 Any CPU就可以了; 解决方法:

  8. servlet 中 web.xml

    <servlet> <servlet-mapping> 他们之间的关系可以使一对一,也可是一对多的关系. <servlet> <servlet-name> ...

  9. javascript “||”、“&&”的灵活运用

    主要介绍了||和 &&的作用 1.|| 和Java中不一样 代表的是 如果左边的true就返回左边 否则返回右边 2.&& 和java中不一样 代表的是 如果左边返回的 ...

  10. mysql 一个典型的数据库建表建用户过程

    cmd 命令不接 ";" mysql 命令后接 ";" 1.以管理员身份登录mysql mysql -u root –p 2.选择mysql数据库 use my ...