热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CF1444ADivision

文章目录ResultResultResultHyperlinkHyperlinkHyperlinkDescriptionDescriptionDescriptionSolution


文章目录

        • ResultResultResult
        • HyperlinkHyperlinkHyperlink
        • DescriptionDescriptionDescription
        • SolutionSolutionSolution
        • CodeCodeCode


ResultResultResult

...




HyperlinkHyperlinkHyperlink

http://codeforces.com/contest/1444/problem/A




DescriptionDescriptionDescription

TTT组数据,每组数据给定A,BA,BA,B,问满足是AAA的约数但不是BBB的倍数的最大的正整数

数据范围:T≤50,A≤1018,B≤109T\leq 50,A\leq 10^{18},B\leq 10^9T50,A1018,B109




SolutionSolutionSolution


  1. A=BA=BA=B,答案即为AAA的除去本身的最大约数
  2. AA<B&#xff0c;答案为AAA
  3. A>BA>BA>B&#xff0c;若AAA不是BBB的倍数答案为AAA
    否则&#xff0c;对BBB分解质因数&#xff0c;去除到AAA的该此项小于BBB即可

时间复杂度&#xff1a;O(TB)O(T\sqrt B)O(TB

)




CodeCodeCode

#include
#include
#include
#include
#define LL long long
using namespace std;int T;
LL a,b,res;
inline LL read()
{LL d&#61;1,f&#61;0;char c;while(c&#61;getchar(),!isdigit(c)) if(c&#61;&#61;&#39;-&#39;) d&#61;-1;f&#61;(f<<3)&#43;(f<<1)&#43;c-48;while(c&#61;getchar(),isdigit(c)) f&#61;(f<<3)&#43;(f<<1)&#43;c-48;return d*f;
}
signed main()
{T&#61;read();while(T--){a&#61;read();b&#61;read();if(a&#61;&#61;b){for(register int i&#61;2;i*i<&#61;b;i&#43;&#43;)if(a%i&#61;&#61;0){printf("%lld\n",a/i);goto loop;}puts("1");continue;}if(a>b) {if(a%b!&#61;0) {printf("%lld\n",a);continue;}LL k&#61;a/b,B&#61;b;res&#61;0;for(register int i&#61;2;i*i<&#61;b;i&#43;&#43;) if(b%i&#61;&#61;0) {LL A&#61;a,now&#61;1;int tot1&#61;0,tot2&#61;0;while(A%i&#61;&#61;0) A/&#61;i,tot1&#43;&#43;;while(b%i&#61;&#61;0) b/&#61;i,tot2&#43;&#43;,now*&#61;i;now/&#61;i;LL p&#61;A*now;res&#61;max(res,p);}if(b!&#61;1) {while(a%b&#61;&#61;0) a/&#61;b;res&#61;max(res,a);}printf("%lld\n",res);}else printf("%lld\n",a);loop:;}
}

推荐阅读
author-avatar
mobiledu2502917563
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有