题目链接:http://4.gdutcode.sinaapp.com/contest.php?cid=1021

F

题意:给出n和m,要求满足gcd(x,y)=n && lcm(x,y)=m的pair(x,y)的个数

sol:先YY一下:

设   gcd(x,y)=n,lcm(x,y)=m

那么有x=a*n,y=b*n  ;  m=c*x,m=d*y    (其中a与b互质,c与d互质)

那么有m=a*c*n,m=b*d*n

又因为a、b、c、d必须是整数,所以m/n必须是整数,即m%n==0    //(不用纠结。。。这条性质是确定的)

设N=m/n,那么有a*c=b*d=N        (其中a与b互质,c与d互质)

这里会有一个奇怪的事实:要想满足这个条件,那么a与c互质,b与d互质

证明自己想去。。。。。。(逃

证明:设a有质因子AA,那么b一定没有质因子AA

   又因为ac=bd,所以d必须有质因子AA

   又因为c和d互质,所以c一定没有质因子AA

     所以a有的质因子c一定不能有。所以a与c互质。

同理可证b和d互质

这时问题就转化成了:在N的所有约数中,找出所有互质的pair。

O(sqrt(N))就可以搞定~

在coding的时候注意一个地方:

LL T=sqrt(N*1.0);

那个1.0是必须要乘的,因为sqrt的参数需要是浮点数

 #include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
#define LL long long LL gcd(LL a,LL b)
{
if (b==) return a;
return gcd(b,a%b);
} int T;
LL n,m;
int main()
{
scanf("%d",&T);
while (T--)
{
//scanf("%lld%lld",&n,&m);
cin>>n>>m;
//gcd=n lcm=m
if (m%n!=)
printf("0\n");
else
{
LL ans=;
LL N=m/n;
LL i,Tm;
LL T=sqrt(N*1.0);
for (i=;i<=T;i++)
{
if (N%i==)
{
Tm=N/i;
if (gcd(Tm,i)==)
ans++;
}
}
cout<<ans<<endl;
}
} return ;
}

O

很水的找规律题啦~

 #include <iostream>
#include <cstdio>
using namespace std; long long N,M,tm; int main()
{
while(~scanf("%lld",&N))
{
M=N/;
tm=N%; //0,1,2
M=M*;
if (tm==) M++;
printf("%lld\n",M);
}
return ;
}

GDUT校赛的更多相关文章

  1. 2015 GDUT校赛

    周末打了个GDUT的校赛,也是作为SCAU的一场个人排位. 比赛中竟然卡了个特判,1个半钟就切了5条了,然后一直卡. 还有其他两条可以做的题也没法做了,性格太执着对ACM来说也是错呀. 讲回正题 . ...

  2. GDUT 校赛02 dp回文串

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABSkAAAIhCAIAAAAtmainAAAgAElEQVR4nOzdfaxkd33n+ZJacstqa3 ...

  3. GDUT 校赛01 dp

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAABT8AAAILCAIAAAChHn9YAAAgAElEQVR4nOy9f4il13nneUGgxrRYux ...

  4. 2016 华南师大ACM校赛 SCNUCPC 非官方题解

    我要举报本次校赛出题人的消极出题!!! 官方题解请戳:http://3.scnuacm2015.sinaapp.com/?p=89(其实就是一堆代码没有题解) A. 树链剖分数据结构板题 题目大意:我 ...

  5. SCNU省选校赛第二场B题题解

    今晚的校赛又告一段落啦,终于"开斋"了! AC了两题,还算是满意的,英语还是硬伤. 来看题目吧! B. Array time limit per test 2 seconds me ...

  6. 2014上半年acm总结(1)(入门+校赛)

    大一下学期才开始了acm,不得不说有一点迟,但是acm确实使我的生活充实了很多,,不至于像以前一样经常没事干=  = 上学期的颓废使我的c语言学的渣的一笔..靠考前突击才基本掌握了语法 寒假突然醒悟, ...

  7. 2017CUIT校赛-线上赛

    2017Pwnhub杯-CUIT校赛 这是CUIT第十三届校赛啦,也是我参加的第一次校赛. 在被虐到崩溃的过程中也学到了一些东西. 这次比赛是从5.27早上十点打到5.28晚上十点,共36小时,中间睡 ...

  8. HZNU第十二届校赛赛后补题

    愉快的校赛翻皮水! 题解 A 温暖的签到,注意用gets #include <map> #include <set> #include <ctime> #inclu ...

  9. 校赛F

    问题描述 例如对于数列[1 2 3 4 5 6],排序后变为[6 1 5 2 4 3].换句话说,对于一个有序递增的序列a1, a2, a3, ……, an,排序后为an, a1, an-1, a2, ...

随机推荐

  1. SQL GETDATE()日期格式化函数

    Sql Server 中一个非常强大的日期格式化函数 Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AMSelect CONV ...

  2. 极简Word排版示例(以Word2013为例)

    文档标题 第一行写下文档的名字,居中,微软雅黑字体,三号 章节标题 每一章的标题单独一行,光标选中这行,设置为标题1 每一节的标题单独一行,光标选中这行,设置为标题2 全部章节标题设置完毕后,下一步 ...

  3. FineUI参考手册(离线版)现已免费提供下载!

    http://fineui.com/bbs/forum.php?mod=viewthread&tid=3473

  4. JavaEE PO VO BO DTO POJO DAO 整理总结

    佩服能将复杂难懂的技术,抽象成简单易懂事物的人. 厌恶将简单易懂的技术,添加一堆专业术语将别人弄的头晕目眩的人. PO VO BO DTO POJO DAO 总体一览: 1.DAO[data acce ...

  5. StackExchange.Redis--纯干货喂饱你

    Redis和StackExchange.Redis redis有多个数据库1.redis 中的每一个数据库,都由一个 redisDb 的结构存储.其中,redisDb.id 存储着 redis 数据库 ...

  6. Mysql之case语句(附带实例)

    这段时间,做项目做累了,好不容易有点个人的学习时间,利用这个小时,总结一下,最近做统计的时候常用的case语句吧. 结构:case  when… then …end 1.判断的同时改变其值 eg:   ...

  7. How to create a batch of VMs with PowerShell

    Foreword When we do some test that need several VMs, we can use PowerShell script or CmdLets to impl ...

  8. Myeclipse 2015 stable 2.0 完美破解方法

    2015-08-21  以前写了一篇<Myeclipse 2015 stable 1.0 完美破解方法>,现 在跟新一下Myeclipse 2015 stable 2.0 破解方法,此方法 ...

  9. matlab 画图中线型及颜色设置

    matlab受到控制界广泛接受的一个重要原因是因为它提供了方便的绘图 功能.本章主要介绍2维图形对象的生成函数及图形控制函数的使用方 法,还将 简单地介绍一些图形的修饰与标注函数及操作和控制MATLA ...

  10. 查询和修改(Queries and Mutations)

    On this page, you'll learn in detail about how to query a GraphQL server. 在这个页面,你将会学习更多的关于如何查询GraphQ ...