传送门

答案不大于 $10^6$,考虑枚举答案

对于枚举的 ans,必须满足对于任意 i,j(i≠j) 都有 使式子$c_i+kp_i \equiv c_j+kp_j\ (mod\ ans)$成立的最小的 k > min( L [ i ] , L [ j ] )

考虑如何求出式子中最小的 k

转化一下,变成$kp_i-kp_j+c_i-c_j=t\cdot ans$

整理一下得 $k(p_i-p_j)-t\cdot ans=c_i-c_j$

显然可以 exgcd 求 k

复杂度最高为 $O(MN^2log_M)$

但是实际上跑得飞快

#include<cstdio>
#include<algorithm>
#include<cmath>
#include<cstring>
#include<iostream>
using namespace std;
typedef long long ll;
inline int read()
{
int x=,f=; char ch=getchar();
while(ch<''||ch>'') { if(ch=='-') f=-; ch=getchar(); }
while(ch>=''&&ch<='') { x=(x<<)+(x<<)+(ch^); ch=getchar(); }
return x*f;
}
const int N=;
int exgcd(int a,int b,int &x,int &y)
{
if(!b) { x=,y=; return a;}
int g=exgcd(b,a%b,x,y);
int tmp=x; x=y; y=tmp-a/b*y;
return g;
}
int n,c[N],p[N],L[N];
inline bool check(int M)//判断枚举的ans是否符合要求
{
int X,Y,res,A,B,C,d,mo;
for(int i=;i<=n;i++)
for(int j=i+;j<=n;j++)
{
A=p[i]-p[j],B=M,C=c[j]-c[i];
if(A<) A=-A,C=-C;//负数要转正,B的符号对答案没影响
d=exgcd(A,B,X,Y);
if(C%d) continue;//如果无解说明永远不会碰面,符合要求
res=X*C/d; mo=M/d;
res=(res%mo+mo)%mo;
if(res<=min(L[i],L[j])) return ;//判断有生之年内是否会碰面
}
return ;
}
int main()
{
int mx=;
n=read();
for(int i=;i<=n;i++)
{
c[i]=read(),p[i]=read(),L[i]=read();
mx=max(mx,c[i]);
}
for(int i=mx;i<=1e6;i++)
if(check(i)) { printf("%d",i); break; }
return ;
}

最新文章

  1. javascript向上向下取整
  2. struts2 表单验证
  3. jQuery基础之(四)jQuery创建DOM元素
  4. arp绑定网关MAC地址错误
  5. [JAVA]在linux中设置JDK环境,ZendStudio,Eclipse
  6. Android布局_布局概述和LinearLayout布局
  7. IIS7程序发布后 之 报图表处理程序配置 [c:\TempImageFiles\] 中的临时目录无效
  8. IIC总线协议
  9. ACdream OJ 1153 (k-GCD)
  10. C++实现线程池 .
  11. codeforces 630P. Area of a Star
  12. sqlite 查询数据 不用回调
  13. 1245 - Harmonic Number (II)(规律题)
  14. Appium 出现 &gt; error: com.test/.activity1 never started. Current: com.test/.activity2
  15. jquery datatables api (转)
  16. jQuery使用简单示例 validate 插件
  17. js判断IE浏览器版本(IE8及以下)
  18. ftp无法上传问题
  19. SPOJ COT3.Combat on a tree(博弈论 Trie合并)
  20. CEdit使用(Edit Control控件)

热门文章

  1. 对数组名取地址 a[ ],&amp;a
  2. python爬虫--编码问题y
  3. Android排错: has leaked window com.android.internal.policy.impl.PhoneWindow$ that was originally added here
  4. HTML标签详细讲解
  5. Nginx 正向代理和反向代理
  6. Eigen介绍及简单使用
  7. 5.内网渗透之PTH&amp;PTT&amp;PTK
  8. 关于setVisibility的几个常量
  9. [译]Javasctipt中的substring
  10. Algorithms - Bucket sort