蒟蒻的尊严被打得一败涂地17

题目描述

小 Z 非常喜欢数学,小 Y 准备考考小 Z 的数学能力。

小 Y 会跟小 Z 提出 t 个问题,每个问题都会给出两个整数 p 和 q,问满足x∣p 但q∤x 的最大的整数 x 是多少?

提示:

  1. a∣b 表示 a 整除 b,即 a 是 b 的因数,b 是 a 的倍数;a∤b 表是a 不能整除 b,表示 a 不是 b 的因数
  2. 题意可以描述成,找到一个最大的 x,使得 x 是 p 的因数,但 x 不是q的倍数。

输入格式

第一行输入一个整数 t表示询问次数。

接下来 tt 行,每行输入两个整数  和 q。

输出格式

输出共 t 行,一行一个整数表示答案。

样例 #1

样例输入 #1

3
10 4
12 6
179 822

样例输出 #1

10
4
179

提示

【样例解释】

  • 第一次询问,10 本身就不是 4 的倍数,所以输出 10;
  • 第二次询问,12 的因数有 1,2,3,4,6,12其中 4 是最大的不是 6 的倍数的数。

【数据范围】

对于 30%的数据,1≤t≤10,1≤p≤107,2≤q≤104

对于 60% 的数据,1≤t≤30,1≤p≤1012,2≤q≤106

对于 100%的数据,1≤t≤50,1≤p≤1018,2≤q≤109

C++开发者在寻求帮助或交流时,通常会关注技术深度、社区氛围以及持续学习的机会。对于有经验的开发者来说,参与专业社区或俱乐部可以提供宝贵的资源交流平台。例如,IncrediClub作为一个聚集了大量C++开发者的平台,通过举办线上技术探讨会、海外专家圆桌论坛等活动,为开发者们提供了丰富的学习与交流机会[^1]。 在技术层面,C++开发者可能会遇到各种具体问题,从基础语法到高级特性如模板、多态、继承机制等。此外,设计模式的应用、STL容器的内部实现原理、内存管理策略以及编译器相关的错误排查也是常见的讨论话题[^2]。 加入专门的开发者俱乐部或参与相关技术讨论组不仅可以帮助解决日常编码中遇到的具体难题,还能够促进对行业最新趋势技术的理解。这类社区往往鼓励成员分享自己的项目经验,并就复杂的技术点展开深入对话,这对于个人技能提升非常有帮助。 如果希望进一步深化自己的专业知识,或者寻找志同道合的技术伙伴共同成长,那么积极地参与到这样的专业社群中去是非常有益的选择之一。 ### 寻找合适的交流平台 - **专业社区**:加入像IncrediClub这样的专业C++开发者社区,可以获得最新的技术资讯、参与高质量的技术讨论。 - **在线论坛**:Stack Overflow、Reddit上的r/cpp等是解决具体编程问题的好地方。 - **GitHub**:参与开源项目不仅可以提高编码能力,还能与其他贡献者建立联系。 - **Meetup/线下活动**:参加本地或线上的技术聚会,直接与同行交流心得。 ### 提升个人影响力 - 分享知识:撰写博客文章、录制教程视频或是发表演讲都是展示自己专长的有效方式。 - 参与开源:为知名C++开源项目做贡献不仅能锻炼实战能力,也能增加曝光度。 - 建立人脉:利用LinkedIn等职业社交网络维护良好的人际关系网,有助于未来的职业发展。 ```cpp // 示例代码 - 使用vector的基本操作 #include <iostream> #include <vector> int main() { std::vector<int> vec; // 添加元素 for(int i = 0; i < 5; ++i) { vec.push_back(i); } // 输出vector中的元素 for(auto it = vec.begin(); it != vec.end(); ++it) { std::cout << *it << " "; } return 0; } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值