「题解」:$Simple$
2024-10-07 21:53:07
问题 A: $Simple$
时间限制: 1 Sec 内存限制: 256 MB
题面
题面谢绝公开。
题解
不算数学的数学题??
直接枚举会重。$60%$两种算法:1.无脑$vis$数组记录。2.$exgcd$解方程判定是否有解。
$100%$:首先考虑特殊情况:$n$、$m$互质。
我们设$n*x+m*y=z$,考虑枚举$y$和$x$,不难发现,当$y>=x$的时候均能找到一个$y'$使得$n|(y-y')$。
于是会出现重复。因此只需枚举$y([0,n-1])$,计算贡献即可。
对于一般情况,可以先化成互质。y筛到[0,n/gcd_{a,b}-1]即可。
#include<bits/stdc++.h>
#define rint register int
using namespace std;
int T;
long long n,m,q,ans;
inline long long gcd(long long A,long long B){return (B==)?A:gcd(B,A%B);}
int main()
{
scanf("%d",&T);
while(T--)
{
ans=;
scanf("%lld %lld %lld",&n,&m,&q);
long long g=gcd(n,m);
for(rint i=;i<(n/g);++i)
{
long long z=q-i*m;
if(z<)break;
ans+=z/n+;
}
printf("%lld\n",q-ans+);
}
}
最新文章
- 解决easy ui 1.4datebox控件不能清空的问题
- 浅谈输入输出”重定向“——基于Linux系统
- flask开发遇到 Must provide secret_key to use csrf解决办法
- HOWTO - Basic MSI安装包在安装运行过程中如何获取完整源路径
- C#比较时间大小 1、比较时间大小的实验
- MVC 读取图片
- 格雷码(Gray Code)转二进制码(Binary Code)
- MySql中Blob二进制对象的处理
- 如何实现在Windows上运行Linux程序,附示例代码
- Centos7搭建swarm集群
- [poj1279]Art Gallery
- Java学习笔记(二)事件监听器
- Spark2.4.0伪分布式环境搭建
- Axios
- es6基础知识总结(附加)
- vue-cli打包到部署到nginx服务器
- AAPT2 error: check logs for details 问题的终究修复
- 19+ JavaScript 常用的简写技巧
- JAVAWEB 一一 Spirng(框架,IOC控制反转,DI依赖注入)
- Oracle 单实例 Relink Binary Options 说明
热门文章
- springboot + zipkin(brave-okhttp实现)
- add a characteristic in enovia PLM
- uuencode - 对二进制文件编码
- 论文阅读笔记:《Generating Question-Answer Hierarchies》
- 字符串利用%02d将月份前加0
- StringUtils工具类常用api <;转>;
- 图片转换为base64
- NX二次开发-UFUN创建镜像体UF_MODL_create_mirror_body
- Python module中的全局变量
- RoadFlow2.7.5 MyController.cs