2012多校3.A(用O(log(n))判断b^k % a == 0)
Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u
Description
Input
For each case, there’s a single line contains A and B.
Output
Sample Input
5 5
2 3
1000 2000
Sample Output
Case #2: NO
Case #3: YES
#include<bits/stdc++.h>
using namespace std;
typedef long long ll ;
ll a , b ;
int main () {
int T ;
scanf ("%d" , &T ) ;
for (int cas = 1 ; cas <= T ; cas ++) {
scanf ("%I64d%I64d" , &a , &b) ;
ll g = __gcd (a,b) ;
if (g == 1) {
printf ("Case #%d: NO\n" , cas) ;
continue ;
}
a/= g ;
ll flag = __gcd (a , g) ;
while (flag != 1) {
while (a % flag == 0) a/=flag ;
flag = __gcd (a , g) ;
}
if (a == 1 ) printf ("Case #%d: YES\n" , cas) ;
else printf ("Case #%d: NO\n" , cas) ;
}
return 0 ;
}
其实用O(sqrt(n))的方法也是可以的,但姿势不好看很容易tle。
用log(n)的方法理解上也很容易,先求g = gcd(a , b) ,那么显然若 {a的质因子 } 属于 {g的质因子} , a^k % b 一定等于0 ------no.1
所以之后不断求 flag = gcd (g , a) , 并让 a /= flag ;
最终a 和 g互质时,若a != 1 , 则no.1肯定不成立,那么肯定不存在k,能让所求等式成立,
反之a = 1的情况,就肯定成立了。
2012多校3.A(用O(log(n))判断b^k % a == 0)的更多相关文章
- Holedox Eating HDU - 4302 2012多校C 二分查找+树状数组/线段树优化
题意 一个长度$n<=1e5$的数轴,$m<=1e5$个操作 有两种一些操作 $0$ $x$ 在$x$放一个食物 $1$ 一个虫子去吃最近的食物,如果有两个食物一样近,不转变方向的去吃 ...
- HDU 4474 Yet Another Multiple Problem【2012成都regional K题】 【BFS+一个判断技巧】
Yet Another Multiple Problem Time Limit: 40000/20000 MS (Java/Others) Memory Limit: 65536/65536 K ...
- 牛客多校第十场 H Stammering Chemists 判断图同构
题意: 给出一个无向图,表示一种有机物质的结构式,问你这个有机物质是列表中的哪个. 题解: 判断图同构需要枚举全排列以对应点,但是此题中几乎只需要将点度数排序后一个一个比较,对于甲基位置再加个特判即可 ...
- Linux system log avahi-daemon[3733]: Invalid query packet
在检查Linux的日志文件时,发现大量 avahi-daemon[3733]: Invalid query packet错误(不同服务器对应的数字有所不同) Aug 3 07:00:01 hostn ...
- [转]Android输出Log到文件
前言:开发中遇到mx4这款机型Eclipse联调不上,logcat看不了,需要输出生成文件查看调试信息.网上搜了下,功能很完善了.startService和过滤输出信息需要自己添加设置,另外注意添加权 ...
- SQL 2008 RAISERROR语法在SQL 2012/2014不兼容问题
原文 旧的RAISERROR语法在SQL 2012不兼容问题 raiserror 写法: SQL 2008: raiserror 55030 'text error' SQL 2012: raiser ...
- Mysql query log
一.查询日志的概念: 查询日志记录MySQL中所有的query,通过"--log[=file_name]"来打开该功能.由于记录了所有的query,包括所有的select,体积比较 ...
- [转] C#实现自动化Log日志
qing2005原文地址 C#实现自动化Log日志 在开发项目的时候,我们不免要使用Log记录日志,使用最多的是Log4Net和EntLib Log,在需要记录日志的代码处加入log.Write(日志 ...
- SQL Server 2012 Express LocalDB
微软最新推出的 SQL Server 2012 Express LocalDB 是一种 SQL Server Express 的运行模式,特别适合用在开发环境使用,也内置在 Visual Studio ...
随机推荐
- java里面时间差比较
currentTime.before(this.getLastActivateTime(time))//返回true 或者false public Date getLastActivateTime(t ...
- 使用Scrapy爬虫框架简单爬取图片并保存本地(妹子图)
初学Scrapy,实现爬取网络图片并保存本地功能 一.先看最终效果 保存在F:\pics文件夹下 二.安装scrapy 1.python的安装就不说了,我用的python2.7,执行命令pip ins ...
- JSP内置对象-request
JSP内置对象即无需声明就可以直接使用的对象实例,在实际的开发过程中,比较常用的JSP对象有request,response,session,out和application等,笔者在本文章中将简单介绍 ...
- 屠蛟之路_重伤的屠蛟俊_ThirdDay
在屠蛟少年们重登数据库大山的途中,少年屠蛟俊(511)实力扛把子,一直坚持在队伍前头开路引领.披荆斩棘,却也因为一路与险水恶林.狂禽猛兽做战斗而精力受损,最终一不小心坠进beta怪蛟设置的陷阱深洞里, ...
- BZOJ1085: [SCOI2005]骑士精神
传送门 dfs+A*优化. A*是人工智能算法,属于启发式搜索的一部分.第一次知道这个名词是在写虫食算的时候闵神说这个用A*搞跑的比谁都快..但是当时搜了很多资料想搞清楚这个东西,但是当时还是太拿衣服 ...
- Datatable的Select()
利用datatable的select方法筛选出符合条件的datarow进行操作 Select() Select(string filterExpression) Select(string filte ...
- 转移大于2m的pdf文件到另外一个文件夹
转移大于2m的pdf文件到另外一个文件夹 remove_moret2M_pdfs.py # -*- coding: utf-8 -*- """ Created on Mo ...
- C#----操作应用程序配置文件App.config
对配置文件的一些疑问: 在应用程序的目录下,有两处值得注意的地方,一个是应用程序根目录下的App.config文件,和bin\debug\name.exe.config 或者 bin\Release\ ...
- zepto.js之ajax剖析
1.ajax的baseHeaders ajax插件中的baseHeaders对象的是http请求头部的信息 var mime = settings.accepts[dataType], baseHea ...
- Red Black Tree in C
http://web.mit.edu/~emin/www.old/source_code/red_black_tree/index.html